1
1
const DogstatsdClient = require ( 'dog-statsy' ) ;
2
2
const Hoek = require ( '@hapi/hoek' ) ;
3
3
const debug = require ( 'debug' ) ( 'hapi:plugins:dogstatsd' ) ;
4
- const { get, set, uniq, uniqWith, isEqual } = require ( 'lodash' ) ;
4
+ const {
5
+ get, set, uniq, uniqWith, isEqual
6
+ } = require ( 'lodash' ) ;
5
7
6
8
const defaults = {
7
9
dogstatsdClient : null ,
@@ -13,27 +15,27 @@ const defaults = {
13
15
excludedTags : [ ]
14
16
} ;
15
17
16
- const getRequestDns = request => request . headers . host . replace ( / : / , '_' ) ;
18
+ const getRequestDns = ( request ) => request . headers . host . replace ( / : / , '_' ) ;
17
19
18
- const getUrlPath = request => request . url . pathname ;
20
+ const getUrlPath = ( request ) => request . url . pathname ;
19
21
20
22
const getRoutePath = ( request ) => {
21
- const specials = request . _core . router . specials ;
23
+ const { specials } = request . _core . router ;
22
24
23
25
if ( request . _route === specials . notFound . route ) {
24
26
return '/{notFound*}' ;
25
- } else if ( specials . options && request . _route === specials . options . route ) {
27
+ } if ( specials . options && request . _route === specials . options . route ) {
26
28
return '/{cors*}' ;
27
- } else if ( request . _route . path === '/' && request . _route . method === 'options' ) {
29
+ } if ( request . _route . path === '/' && request . _route . method === 'options' ) {
28
30
return '/{cors*}' ;
29
31
}
30
32
return request . route . path ;
31
33
} ;
32
34
33
- const getStatusCode = request => ( ( request . response . isBoom )
35
+ const getStatusCode = ( request ) => ( ( request . response . isBoom )
34
36
? request . response . output . statusCode : request . response . statusCode ) ;
35
37
36
- const getHttpMethod = request => request . method . toUpperCase ( ) ;
38
+ const getHttpMethod = ( request ) => request . method . toUpperCase ( ) ;
37
39
38
40
const tagMap = {
39
41
dns : getRequestDns ,
@@ -58,7 +60,7 @@ exports.injectMetrics = ({ request, metrics }) => {
58
60
exports . register = ( server , options ) => {
59
61
const settings = Hoek . applyToDefaults ( defaults , options || { } ) ;
60
62
// Filter list of default tags, removing excludedTags
61
- settings . defaultTags = Object . keys ( tagMap ) . filter ( e => ! settings . excludedTags . includes ( e ) ) ;
63
+ settings . defaultTags = Object . keys ( tagMap ) . filter ( ( e ) => ! settings . excludedTags . includes ( e ) ) ;
62
64
63
65
const dogstatsdClient = options . dogstatsdClient || new DogstatsdClient ( {
64
66
host : settings . host ,
@@ -115,9 +117,13 @@ exports.register = (server, options) => {
115
117
Hoek . merge ( defaultMetrics , stateMetrics ) ;
116
118
117
119
for ( const metric of defaultMetrics ) {
118
- const { type, name, value, tags = [ ] } = metric ;
120
+ const {
121
+ type, name, value, tags = [ ]
122
+ } = metric ;
119
123
const combinedTags = [ ...localTags , ...tags ] ;
120
- debug ( { type, name, value, tags : combinedTags } ) ;
124
+ debug ( {
125
+ type, name, value, tags : combinedTags
126
+ } ) ;
121
127
dogstatsdClient [ type ] ( name , value , combinedTags ) ;
122
128
}
123
129
} ) ;
0 commit comments