feat(portal-api): report metrics from hapi
This commit is contained in:
parent
5e7bec0aa7
commit
32b450c1b6
@ -96,6 +96,34 @@
|
|||||||
name: 'usage',
|
name: 'usage',
|
||||||
help: 'Disk usage',
|
help: 'Disk usage',
|
||||||
type: 'gauge'
|
type: 'gauge'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
namespace: 'api',
|
||||||
|
subsystem: 'request',
|
||||||
|
name: 'concurrent',
|
||||||
|
help: 'Number of concurrent requests',
|
||||||
|
type: 'gauge'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
namespace: 'api',
|
||||||
|
subsystem: 'process',
|
||||||
|
name: 'up_time',
|
||||||
|
help: 'Process up time',
|
||||||
|
type: 'counter'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
namespace: 'api',
|
||||||
|
subsystem: 'process',
|
||||||
|
name: 'mem_rss',
|
||||||
|
help: 'Process memory RSS usage',
|
||||||
|
type: 'gauge'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
namespace: 'api',
|
||||||
|
subsystem: 'process',
|
||||||
|
name: 'heap_used',
|
||||||
|
help: 'Process heap usage',
|
||||||
|
type: 'gauge'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
"hoek": "^4.1.1",
|
"hoek": "^4.1.1",
|
||||||
"joi": "^10.6.0",
|
"joi": "^10.6.0",
|
||||||
"joyent-cp-gql-schema": "^1.0.4",
|
"joyent-cp-gql-schema": "^1.0.4",
|
||||||
"portal-data": "^1.1.0"
|
"portal-data": "^1.1.0",
|
||||||
|
"toppsy": "^1.1.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2,9 +2,10 @@
|
|||||||
|
|
||||||
const Brule = require('brule');
|
const Brule = require('brule');
|
||||||
const Hapi = require('hapi');
|
const Hapi = require('hapi');
|
||||||
const Inert = require('inert');
|
|
||||||
const Vision = require('vision');
|
|
||||||
const HapiSwagger = require('hapi-swagger');
|
const HapiSwagger = require('hapi-swagger');
|
||||||
|
const Inert = require('inert');
|
||||||
|
const Toppsy = require('toppsy');
|
||||||
|
const Vision = require('vision');
|
||||||
const Pack = require('./package');
|
const Pack = require('./package');
|
||||||
const Portal = require('./lib');
|
const Portal = require('./lib');
|
||||||
|
|
||||||
@ -42,7 +43,12 @@ server.register([
|
|||||||
{
|
{
|
||||||
register: HapiSwagger,
|
register: HapiSwagger,
|
||||||
options: swaggerOptions
|
options: swaggerOptions
|
||||||
}],
|
},
|
||||||
|
{
|
||||||
|
register: Toppsy,
|
||||||
|
options: { namespace: 'portal', subsystem: 'api' }
|
||||||
|
}
|
||||||
|
],
|
||||||
(err) => {
|
(err) => {
|
||||||
handlerError(err);
|
handlerError(err);
|
||||||
server.start((err) => {
|
server.start((err) => {
|
||||||
|
@ -17,6 +17,6 @@
|
|||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"belly-button": "^3.1.0",
|
"belly-button": "^3.1.0",
|
||||||
"lab": "^13.1.0"
|
"lab": "^14.0.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
38
yarn.lock
38
yarn.lock
@ -502,10 +502,6 @@ ast-types@0.9.0:
|
|||||||
version "0.9.0"
|
version "0.9.0"
|
||||||
resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.0.tgz#c8721c8747ae4d5b29b929e99c5317b4e8745623"
|
resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.0.tgz#c8721c8747ae4d5b29b929e99c5317b4e8745623"
|
||||||
|
|
||||||
ast-types@0.9.6:
|
|
||||||
version "0.9.6"
|
|
||||||
resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9"
|
|
||||||
|
|
||||||
async-each@^1.0.0:
|
async-each@^1.0.0:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
|
resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d"
|
||||||
@ -3502,7 +3498,7 @@ esprima@^2.6.0, esprima@~2.7.1:
|
|||||||
version "2.7.3"
|
version "2.7.3"
|
||||||
resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
|
resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581"
|
||||||
|
|
||||||
esprima@^3.1.1, esprima@~3.1.0:
|
esprima@^3.1.1:
|
||||||
version "3.1.3"
|
version "3.1.3"
|
||||||
resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
|
resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633"
|
||||||
|
|
||||||
@ -3712,11 +3708,11 @@ extsprintf@1.0.2:
|
|||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550"
|
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550"
|
||||||
|
|
||||||
extsprintf@1.2.0:
|
extsprintf@1.2.0, extsprintf@^1.2.0:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529"
|
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529"
|
||||||
|
|
||||||
extsprintf@1.3.0, extsprintf@^1.2.0:
|
extsprintf@1.3.0:
|
||||||
version "1.3.0"
|
version "1.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
|
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
|
||||||
|
|
||||||
@ -4255,8 +4251,8 @@ graphql-tag@^2.0.0, graphql-tag@^2.4.0:
|
|||||||
resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.4.0.tgz#0fe137348d4db2efaf29b52ba4c1cbf84ac138cb"
|
resolved "https://registry.yarnpkg.com/graphql-tag/-/graphql-tag-2.4.0.tgz#0fe137348d4db2efaf29b52ba4c1cbf84ac138cb"
|
||||||
|
|
||||||
graphql@^0.10.0, graphql@^0.10.1:
|
graphql@^0.10.0, graphql@^0.10.1:
|
||||||
version "0.10.1"
|
version "0.10.3"
|
||||||
resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.10.1.tgz#75c93c2ce73aeb5bae2eefb555a8e9e39c36027d"
|
resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.10.3.tgz#c313afd5518e673351bee18fb63e2a0e487407ab"
|
||||||
dependencies:
|
dependencies:
|
||||||
iterall "^1.1.0"
|
iterall "^1.1.0"
|
||||||
|
|
||||||
@ -6529,7 +6525,7 @@ ono@^2.0.1, ono@^2.2.1:
|
|||||||
version "2.2.5"
|
version "2.2.5"
|
||||||
resolved "https://registry.yarnpkg.com/ono/-/ono-2.2.5.tgz#daf09488b51174da7a7e4275dfab31b438ffa0e3"
|
resolved "https://registry.yarnpkg.com/ono/-/ono-2.2.5.tgz#daf09488b51174da7a7e4275dfab31b438ffa0e3"
|
||||||
|
|
||||||
oppsy@1.x.x:
|
oppsy@1.x.x, oppsy@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/oppsy/-/oppsy-1.0.2.tgz#98014cd6967653a83cfffa554226dc90050baad4"
|
resolved "https://registry.yarnpkg.com/oppsy/-/oppsy-1.0.2.tgz#98014cd6967653a83cfffa554226dc90050baad4"
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -7126,6 +7122,10 @@ punycode@^1.2.4, punycode@^1.4.1:
|
|||||||
version "1.4.1"
|
version "1.4.1"
|
||||||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
|
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
|
||||||
|
|
||||||
|
putmetric@^1.0.1:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/putmetric/-/putmetric-1.0.1.tgz#5b0362732545b4e05c91ef5e087fae075d638a12"
|
||||||
|
|
||||||
q@^1.1.2, q@^1.4.1:
|
q@^1.1.2, q@^1.4.1:
|
||||||
version "1.5.0"
|
version "1.5.0"
|
||||||
resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1"
|
resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1"
|
||||||
@ -7516,7 +7516,7 @@ readline2@^1.0.1:
|
|||||||
is-fullwidth-code-point "^1.0.0"
|
is-fullwidth-code-point "^1.0.0"
|
||||||
mute-stream "0.0.5"
|
mute-stream "0.0.5"
|
||||||
|
|
||||||
recast@0.11.12:
|
recast@0.11.12, recast@^0.11.5:
|
||||||
version "0.11.12"
|
version "0.11.12"
|
||||||
resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.12.tgz#a79e4d3f82d5d72a82ee177aeaa791e793bbe5d6"
|
resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.12.tgz#a79e4d3f82d5d72a82ee177aeaa791e793bbe5d6"
|
||||||
dependencies:
|
dependencies:
|
||||||
@ -7525,15 +7525,6 @@ recast@0.11.12:
|
|||||||
private "~0.1.5"
|
private "~0.1.5"
|
||||||
source-map "~0.5.0"
|
source-map "~0.5.0"
|
||||||
|
|
||||||
recast@^0.11.5:
|
|
||||||
version "0.11.23"
|
|
||||||
resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3"
|
|
||||||
dependencies:
|
|
||||||
ast-types "0.9.6"
|
|
||||||
esprima "~3.1.0"
|
|
||||||
private "~0.1.5"
|
|
||||||
source-map "~0.5.0"
|
|
||||||
|
|
||||||
rechoir@^0.6.2:
|
rechoir@^0.6.2:
|
||||||
version "0.6.2"
|
version "0.6.2"
|
||||||
resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
|
resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384"
|
||||||
@ -9074,6 +9065,13 @@ topo@2.x.x:
|
|||||||
dependencies:
|
dependencies:
|
||||||
hoek "4.x.x"
|
hoek "4.x.x"
|
||||||
|
|
||||||
|
toppsy@^1.1.0:
|
||||||
|
version "1.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/toppsy/-/toppsy-1.1.0.tgz#dd1ef4a15aaa7ef077bc41e9851aa75851610b41"
|
||||||
|
dependencies:
|
||||||
|
oppsy "^1.0.2"
|
||||||
|
putmetric "^1.0.1"
|
||||||
|
|
||||||
touch@1.0.0:
|
touch@1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/touch/-/touch-1.0.0.tgz#449cbe2dbae5a8c8038e30d71fa0ff464947c4de"
|
resolved "https://registry.yarnpkg.com/touch/-/touch-1.0.0.tgz#449cbe2dbae5a8c8038e30d71fa0ff464947c4de"
|
||||||
|
Loading…
Reference in New Issue
Block a user