Skip to content

Commit

Permalink
v0.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
rjrodger committed Aug 9, 2019
1 parent f697d34 commit 2c37f3a
Show file tree
Hide file tree
Showing 7 changed files with 123 additions and 188 deletions.
31 changes: 31 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ $ npm install @seneca/user-telemetry

## Action Patterns

* [get:stats,sys:user-telemetry](#-getstatssysusertelemetry-)


<!--END:action-list-->
Expand All @@ -30,6 +31,36 @@ $ npm install @seneca/user-telemetry

## Action Descriptions

### &laquo; `get:stats,sys:user-telemetry` &raquo;

Get event collection statistics.




#### Examples



* `get:stats,sys:user-telemetry,get:stats`
*



#### Replies With


```
{
_start: 'Start time',
_last: 'Last event time',
_instance: 'Seneca instance id',
user_cmd: 'Count of _user_cmd_ (e.g. register, login, ...) events seen'
}
```


----------


<!--END:action-desc-->
Expand Down
2 changes: 2 additions & 0 deletions dest/segment.js
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,8 @@ var d = null
const intern = (segment.intern) = {
handle: {
register: function(seneca, options, analytics, msg, res, meta) {
// if res.ok!!!

analytics.identify({
userId: res.user.id,
timestamp: (d=new Date(),d.setTime(meta.start),d),
Expand Down
106 changes: 57 additions & 49 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@seneca/user-telemetry",
"version": "0.1.1",
"version": "0.2.0",
"description": "A Seneca plugin that provides basic user telemetry operations.",
"main": "user-telemetry.js",
"scripts": {
Expand Down Expand Up @@ -41,10 +41,10 @@
"devDependencies": {
"seneca": "plugin",
"seneca-basic": "^0.6.0",
"seneca-doc": "^0.2.2",
"seneca-doc": "^1.0.0",
"seneca-entity": "^4.1.0",
"seneca-plugin-validator": "^0.1.1",
"seneca-promisify": "^0.8.0",
"@seneca/user": "^3.0.1"
"@seneca/user": "^3.1.0"
}
}
10 changes: 8 additions & 2 deletions test/user-telemetry.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,17 @@ lab.test('happy', async () => {
}).ready()

await si.post(
'role:user,cmd:register,name:Joe\x20Bloggs,email:joe.bloggs@example.com'
'sys:user,cmd:register,user:{name:Joe\x20Bloggs,email:joe.bloggs@example.com}'
)
await si.post(
'sys:user,cmd:login,user:{email:joe.bloggs@example.com,auto:true}'
)
await si.post('role:user,cmd:login,email:joe.bloggs@example.com,auto:true')

expect(log).equal(['init', 'event/register', 'event/login'])

var stats = await si.post('sys:user-telemetry,get:stats')
expect(stats).contains({ register: 1, login: 1 })
expect(stats._start).below(stats._last)
})

function seneca_instance(config, plugin_options) {
Expand Down

0 comments on commit 2c37f3a

Please sign in to comment.