From 120048ceea2ad07c416e4d0ebd6841591123a358 Mon Sep 17 00:00:00 2001 From: Rob Squires Date: Wed, 3 Jan 2018 17:26:36 +0000 Subject: [PATCH 01/16] allow tags to be built from each request or response --- README.md | 5 ++++- lib/index.js | 2 +- package.json | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 1c3d42c..594ff47 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,10 @@ All options are optional. * `dogstatsd` node-dogstatsd client. `default = new (require("node-dogstatsd")).StatsD()` * `stat` *string* name for the stat. `default = "node.express.router"` -* `tags` *array* of tags to be added to the histogram. `default = []` +* `tags` either: + * *array* of tags to be added to the histogram + * *function* that takes `req` and `res`, returning an array of tags + * `default = []` * `path` *boolean* include path tag. `default = false` * `method` *boolean* include http method tag. `default = false` * `protocol` *boolean* include protocol tag. `default = false` diff --git a/lib/index.js b/lib/index.js index dd47dbf..1dd678d 100644 --- a/lib/index.js +++ b/lib/index.js @@ -25,7 +25,7 @@ module.exports = function (options) { var baseUrl = (base_url !== false) ? req.baseUrl : ''; var statTags = [ "route:" + baseUrl + req.route.path - ].concat(tags); + ].concat(typeof tags === 'function' ? tags(req, res) : tags); if (options.method) { statTags.push("method:" + req.method.toLowerCase()); diff --git a/package.json b/package.json index 34d32f3..da4589e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "connect-datadog", - "version": "0.0.6", + "version": "0.0.7", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": { From 16b86392bf5e929c3bc091ed0a6fa8b9ff166295 Mon Sep 17 00:00:00 2001 From: Alexander James Phillips Date: Wed, 19 Sep 2018 11:33:04 +0100 Subject: [PATCH 02/16] Add grouped response code stat --- README.md | 1 + lib/index.js | 11 ++++++++++- package.json | 2 +- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 594ff47..6492467 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,7 @@ All options are optional. * `method` *boolean* include http method tag. `default = false` * `protocol` *boolean* include protocol tag. `default = false` * `response_code` *boolean* include http response codes. `default = false` +* `response_code_grouped` *boolean* include http response codes grouped by 100, e.g. 5xx. `default = false` ## License diff --git a/lib/index.js b/lib/index.js index 1dd678d..1686b8b 100644 --- a/lib/index.js +++ b/lib/index.js @@ -7,6 +7,7 @@ module.exports = function (options) { var path = options.path || false; var base_url = options.base_url || false; var response_code = options.response_code || false; + var response_code_grouped = options.response_code_grouped || false; return function (req, res, next) { if (!req._startTime) { @@ -39,12 +40,20 @@ module.exports = function (options) { statTags.push("path:" + baseUrl + req.path); } - if (response_code) { + if (response_code || response_code_grouped) { statTags.push("response_code:" + res.statusCode); + } + + if (response_code) { datadog.increment(stat + '.response_code.' + res.statusCode , 1, statTags); datadog.increment(stat + '.response_code.all' , 1, statTags); } + if (response_code_grouped) { + var groupedStatusCode = Math.floor(res.statusCode / 100) + 'xx' + datadog.increment(stat + '.response_code.' + groupedStatusCode , 1, statTags); + } + datadog.histogram(stat + '.response_time', (new Date() - req._startTime), 1, statTags); }; diff --git a/package.json b/package.json index da4589e..8618850 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "connect-datadog", - "version": "0.0.7", + "version": "0.1.0", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": { From 2d0fdb756feacbb14f7abfdaef18a46915ebc88c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20B=C5=82aszak?= Date: Fri, 22 May 2020 09:24:35 +0200 Subject: [PATCH 03/16] NEWKYCSIX-340 replaced node-statsd with hot-shots, github package --- .gitignore | 1 + .npmignore | 4 ++++ Dockerfile | 16 +++++++++++++++ Jenkinsfile | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 2 +- lib/index.js | 2 +- package.json | 11 ++++++---- publish.sh | 17 ++++++++++++++++ 8 files changed, 104 insertions(+), 6 deletions(-) create mode 100644 .npmignore create mode 100644 Dockerfile create mode 100644 Jenkinsfile create mode 100644 publish.sh diff --git a/.gitignore b/.gitignore index 54cfd51..11a405b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ npm-debug.log .DS_Store *.swp *~ +.idea diff --git a/.npmignore b/.npmignore new file mode 100644 index 0000000..d30d396 --- /dev/null +++ b/.npmignore @@ -0,0 +1,4 @@ +Dockerfile +Jenkinsfile +publish.sh +.idea diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..b9d1c35 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,16 @@ +FROM node:10.15-slim +RUN apt-get update && apt-get install -y git + +WORKDIR /app + +ADD package.json yarn.lock .npmrc ./ +RUN yarn install + +ADD . . + +WORKDIR /app + +RUN git config user.name 'Jenkins' +RUN git config user.email 'jenkins@acuris.com' + +ENTRYPOINT ["sh", "/app/publish.sh"] diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..23ebf1b --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,57 @@ +library 'jenkins-shared-library' + +pipeline { + options{ + ansiColor('xterm') + disableConcurrentBuilds() + } + + agent { + node { + label "swarm2" + } + } + + environment { + GITHUB_TOKEN = credentials("github-credentials-token") + GITHUB_CREDS = credentials("github-credentials") + GIT_USERNAME = "${env.GITHUB_CREDS_USR}" + GIT_PASSWORD = "${env.GITHUB_CREDS_PSW}" + } + + parameters { + choice(name: 'NEW_VERSION', choices: ['patch', 'minor', 'major'], description: 'The new version to be published') + } + + + stages { + stage ("Publish") { + steps { + writeNpmConfig() + sh "docker build . -t connect-datadog-publish && docker run -e GITHUB_TOKEN -e GIT_USERNAME -e GIT_PASSWORD -e NEW_VERSION=${params.NEW_VERSION} connect-datadog-publish" + } + } + } + + post { + fixed { + script { + shared.notifyTeams('SUCCESS', 'https://outlook.office.com/webhook/5b6e68a5-2765-4cf2-830e-ba10b5658c14@94d278d4-98ce-45e5-98f5-8a7297697dc1/JenkinsCI/c926fddf8b894afaa5b1346071aca307/13e3d529-3a09-4725-a485-38b711eb5cd8') + } + } + failure { + script { + shared.notifyTeams('FAILED', 'https://outlook.office.com/webhook/5b6e68a5-2765-4cf2-830e-ba10b5658c14@94d278d4-98ce-45e5-98f5-8a7297697dc1/JenkinsCI/c926fddf8b894afaa5b1346071aca307/13e3d529-3a09-4725-a485-38b711eb5cd8') + } + } + } + +} + + +def writeNpmConfig() { + sh """ + echo "//npm.pkg.github.com/:_authToken=$GITHUB_TOKEN" > .npmrc + echo "@mergermarket:registry=https://npm.pkg.github.com" >> .npmrc + """ +} diff --git a/README.md b/README.md index 6492467..200c868 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Add middleware immediately before your router. All options are optional. -* `dogstatsd` node-dogstatsd client. `default = new (require("node-dogstatsd")).StatsD()` +* `dogstatsd` node-dogstatsd client. `default = new (require("hot-shot")).StatsD()` * `stat` *string* name for the stat. `default = "node.express.router"` * `tags` either: * *array* of tags to be added to the histogram diff --git a/lib/index.js b/lib/index.js index 1686b8b..0bf3048 100644 --- a/lib/index.js +++ b/lib/index.js @@ -1,4 +1,4 @@ -var DD = require("node-dogstatsd").StatsD; +var DD = require("hot-shots").StatsD; module.exports = function (options) { var datadog = options.dogstatsd || new DD(); diff --git a/package.json b/package.json index 8618850..6472c78 100644 --- a/package.json +++ b/package.json @@ -1,11 +1,14 @@ { - "name": "connect-datadog", - "version": "0.1.0", + "name": "@mergermarket/connect-datadog", + "version": "0.2.0", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": { "type": "git", - "url": "git://github.com/AppPress/node-connect-datadog.git" + "url": "git://github.com/mergermarket/node-connect-datadog.git" + }, + "publishConfig": { + "registry": "https://npm.pkg.github.com/" }, "keywords": [ "datadog", @@ -15,6 +18,6 @@ "license": "MIT", "readmeFilename": "README.md", "dependencies": { - "node-dogstatsd": "0.0.6" + "hot-shots": "^7.4.2" } } diff --git a/publish.sh b/publish.sh new file mode 100644 index 0000000..da73b37 --- /dev/null +++ b/publish.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +set -x + +publish () { + npm version ${NEW_VERSION} --commit-hooks=false + echo "//npm.pkg.github.com/:_authToken=${GITHUB_TOKEN}" > .npmrc + echo "registry=https://npm.pkg.github.com/mergermarket" >> .npmrc + npm publish + [ $? -eq 0 ] || exit 1 +} + +publish "connect-datadog" + +git add . && git commit -m 'Publishing new versions' +git pull "https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/mergermarket/node-connect-datadog.git" HEAD:master -r +git push "https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/mergermarket/node-connect-datadog.git" HEAD:master --no-verify From 047979e2f26be628746b96ead81a28d878b745e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20B=C5=82aszak?= Date: Fri, 22 May 2020 09:27:04 +0200 Subject: [PATCH 04/16] NEWKYCSIX-340 replaced node-statsd with hot-shots, github package --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6472c78..89db051 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mergermarket/connect-datadog", - "version": "0.2.0", + "version": "0.1.1", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": { From a4a1611a1b4b61eb46ee63cee20a708f9c14caa6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20B=C5=82aszak?= Date: Fri, 22 May 2020 11:15:59 +0200 Subject: [PATCH 05/16] NEWKYCSIX-340 replaced teams webhook --- Jenkinsfile | 4 ++-- README.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 23ebf1b..8f78829 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -36,12 +36,12 @@ pipeline { post { fixed { script { - shared.notifyTeams('SUCCESS', 'https://outlook.office.com/webhook/5b6e68a5-2765-4cf2-830e-ba10b5658c14@94d278d4-98ce-45e5-98f5-8a7297697dc1/JenkinsCI/c926fddf8b894afaa5b1346071aca307/13e3d529-3a09-4725-a485-38b711eb5cd8') + shared.notifyTeams('SUCCESS', 'https://outlook.office.com/webhook/5e7df867-fb74-47ec-ad49-0f69e9067f72@94d278d4-98ce-45e5-98f5-8a7297697dc1/JenkinsCI/f47e4d5b144f42688223d459750b8084/ad74ba70-f060-4706-97c3-22f342f4f121') } } failure { script { - shared.notifyTeams('FAILED', 'https://outlook.office.com/webhook/5b6e68a5-2765-4cf2-830e-ba10b5658c14@94d278d4-98ce-45e5-98f5-8a7297697dc1/JenkinsCI/c926fddf8b894afaa5b1346071aca307/13e3d529-3a09-4725-a485-38b711eb5cd8') + shared.notifyTeams('FAILED', 'https://outlook.office.com/webhook/5e7df867-fb74-47ec-ad49-0f69e9067f72@94d278d4-98ce-45e5-98f5-8a7297697dc1/JenkinsCI/f47e4d5b144f42688223d459750b8084/ad74ba70-f060-4706-97c3-22f342f4f121') } } } diff --git a/README.md b/README.md index 200c868..7c2c919 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ Datadog middleware for Connect JS / Express Add middleware immediately before your router. - app.use(require("connect-datadog")({})); + app.use(require("@mergermarket/connect-datadog")({})); app.use(app.router); ## Options @@ -28,5 +28,5 @@ All options are optional. ## License -View the [LICENSE](https://github.com/AppPress/node-connect-datadog/blob/master/LICENSE) file. +View the [LICENSE](https://github.com/mergermarket/node-connect-datadog/blob/master/LICENSE) file. From 9341937b9e0e5880b66aa54a535fcf637175cf82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fabian=20B=C5=82aszak?= Date: Fri, 22 May 2020 15:42:43 +0200 Subject: [PATCH 06/16] NEWKYCSIX-340 added yarn.lock --- yarn.lock | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 yarn.lock diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..f0d33b6 --- /dev/null +++ b/yarn.lock @@ -0,0 +1,35 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +bindings@^1.3.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + +hot-shots@^7.4.2: + version "7.4.2" + resolved "https://registry.yarnpkg.com/hot-shots/-/hot-shots-7.4.2.tgz#45e98fd4e86b71def59b4b17b25f5f9badf46c51" + integrity sha512-oy+ZkKq+jwsuA2FXnSAXCTqdONC8hbqOTwRwRze2ALZedPUpJIs5fvSzxIola3uSIiw488fZiz7gr5PyAtjOow== + optionalDependencies: + unix-dgram "2.0.x" + +nan@^2.13.2: + version "2.14.1" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.1.tgz#d7be34dfa3105b91494c3147089315eff8874b01" + integrity sha512-isWHgVjnFjh2x2yuJ/tj3JbwoHu3UC2dX5G/88Cm24yB6YopVgxvBObDY7n5xW6ExmFhJpSEQqFPvq9zaXc8Jw== + +unix-dgram@2.0.x: + version "2.0.4" + resolved "https://registry.yarnpkg.com/unix-dgram/-/unix-dgram-2.0.4.tgz#14d4fc21e539742b8fb027de16eccd4e5503a344" + integrity sha512-7tpK6x7ls7J7pDrrAU63h93R0dVhRbPwiRRCawR10cl+2e1VOvF3bHlVJc6WI1dl/8qk5He673QU+Ogv7bPNaw== + dependencies: + bindings "^1.3.0" + nan "^2.13.2" From 24915747062d6697e104eb832ff5f80d458796e0 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 22 May 2020 13:43:22 +0000 Subject: [PATCH 07/16] 0.1.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 89db051..d31a2e3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mergermarket/connect-datadog", - "version": "0.1.1", + "version": "0.1.2", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": { From 2e25233ceeeba8f0ff24eaf71cdde52941dc38d9 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 22 May 2020 13:43:25 +0000 Subject: [PATCH 08/16] Publishing new versions --- .npmrc | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 .npmrc diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..7940731 --- /dev/null +++ b/.npmrc @@ -0,0 +1,2 @@ +//npm.pkg.github.com/:_authToken=5fef494d13da2d38fff1e1f1a53c1896eb86e0bc +registry=https://npm.pkg.github.com/mergermarket From fba7b35ddcffdd6b1e1e24ebf1feb5325196dd47 Mon Sep 17 00:00:00 2001 From: Zbigniew Jany Date: Fri, 7 Aug 2020 14:00:27 +0200 Subject: [PATCH 09/16] NEWKYCSIX-597: add map_route_tag option --- README.md | 1 + lib/index.js | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 7c2c919..e14278f 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,7 @@ All options are optional. * *array* of tags to be added to the histogram * *function* that takes `req` and `res`, returning an array of tags * `default = []` +* `map_route_tag`: *function* `(routeTagValue: string) => string` * `path` *boolean* include path tag. `default = false` * `method` *boolean* include http method tag. `default = false` * `protocol` *boolean* include protocol tag. `default = false` diff --git a/lib/index.js b/lib/index.js index 0bf3048..f648852 100644 --- a/lib/index.js +++ b/lib/index.js @@ -8,6 +8,7 @@ module.exports = function (options) { var base_url = options.base_url || false; var response_code = options.response_code || false; var response_code_grouped = options.response_code_grouped || false; + var map_route_tag = typeof options.map_route_tag === 'function' ? options.map_route_tag : null; return function (req, res, next) { if (!req._startTime) { @@ -24,8 +25,12 @@ module.exports = function (options) { } var baseUrl = (base_url !== false) ? req.baseUrl : ''; + var routeTagValue = baseUrl + req.route.path; + if (map_route_tag !== null) { + routeTagValue = map_route_tag(routeTagValue); + } var statTags = [ - "route:" + baseUrl + req.route.path + "route:" + routeTagValue ].concat(typeof tags === 'function' ? tags(req, res) : tags); if (options.method) { From 5e8e50c4e4442380c85a1cc0e256db278eac8632 Mon Sep 17 00:00:00 2001 From: Zbigniew Jany Date: Mon, 10 Aug 2020 14:46:50 +0200 Subject: [PATCH 10/16] NEWKYCSIX-597: refine map_route_tag to route_tag --- README.md | 2 +- lib/index.js | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index e14278f..bbc6604 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ All options are optional. * *array* of tags to be added to the histogram * *function* that takes `req` and `res`, returning an array of tags * `default = []` -* `map_route_tag`: *function* `(routeTagValue: string) => string` +* `route_tag`: *function* `(req, res) => string` - generates `route` tag value if set * `path` *boolean* include path tag. `default = false` * `method` *boolean* include http method tag. `default = false` * `protocol` *boolean* include protocol tag. `default = false` diff --git a/lib/index.js b/lib/index.js index f648852..2ef567d 100644 --- a/lib/index.js +++ b/lib/index.js @@ -8,7 +8,7 @@ module.exports = function (options) { var base_url = options.base_url || false; var response_code = options.response_code || false; var response_code_grouped = options.response_code_grouped || false; - var map_route_tag = typeof options.map_route_tag === 'function' ? options.map_route_tag : null; + var route_tag = typeof options.route_tag === 'function' ? options.route_tag : null; return function (req, res, next) { if (!req._startTime) { @@ -25,12 +25,12 @@ module.exports = function (options) { } var baseUrl = (base_url !== false) ? req.baseUrl : ''; - var routeTagValue = baseUrl + req.route.path; - if (map_route_tag !== null) { - routeTagValue = map_route_tag(routeTagValue); + var routeTag = `route:${baseUrl + req.route.path}`; + if (route_tag !== null) { + routeTag = `route:${route_tag(req, res)}`; } var statTags = [ - "route:" + routeTagValue + routeTag ].concat(typeof tags === 'function' ? tags(req, res) : tags); if (options.method) { From f905a3d0292268db020d4b99c056368d57b389e5 Mon Sep 17 00:00:00 2001 From: Zbigniew Jany Date: Mon, 10 Aug 2020 14:50:02 +0200 Subject: [PATCH 11/16] NEWKYCSIX-597: strip template string literals --- lib/index.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/index.js b/lib/index.js index 2ef567d..435fa4c 100644 --- a/lib/index.js +++ b/lib/index.js @@ -25,9 +25,9 @@ module.exports = function (options) { } var baseUrl = (base_url !== false) ? req.baseUrl : ''; - var routeTag = `route:${baseUrl + req.route.path}`; + var routeTag = 'route:' + baseUrl + req.route.path; if (route_tag !== null) { - routeTag = `route:${route_tag(req, res)}`; + routeTag = 'route:' + route_tag(req, res); } var statTags = [ routeTag From 02da3d2c62850f82f28c54903ff82ac6ce4c80a3 Mon Sep 17 00:00:00 2001 From: Zbigniew Jany Date: Mon, 10 Aug 2020 16:07:07 +0200 Subject: [PATCH 12/16] NEWKYCSIX-597: fix .gitignore and delete .npmrc --- .gitignore | 1 + .npmrc | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) delete mode 100644 .npmrc diff --git a/.gitignore b/.gitignore index 11a405b..b022b50 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ npm-debug.log *.swp *~ .idea +.npmrc \ No newline at end of file diff --git a/.npmrc b/.npmrc deleted file mode 100644 index 7940731..0000000 --- a/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -//npm.pkg.github.com/:_authToken=5fef494d13da2d38fff1e1f1a53c1896eb86e0bc -registry=https://npm.pkg.github.com/mergermarket From 142ba394deecc8720c7acd637ecfd4b2934d4c5d Mon Sep 17 00:00:00 2001 From: Jenkins Date: Tue, 11 Aug 2020 06:13:22 +0000 Subject: [PATCH 13/16] 0.2.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index d31a2e3..6472c78 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mergermarket/connect-datadog", - "version": "0.1.2", + "version": "0.2.0", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": { From f8a439baf4d3891ac7766b8502ac7140b9ac467e Mon Sep 17 00:00:00 2001 From: Grzegorz Faryna Date: Fri, 20 Sep 2024 12:51:27 +0200 Subject: [PATCH 14/16] Allow to attach response_code tags to response_time metric without involving response_code.* metrics (#4) --- README.md | 1 + lib/index.js | 3 ++- package.json | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index bbc6604..51787d3 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,7 @@ All options are optional. * `protocol` *boolean* include protocol tag. `default = false` * `response_code` *boolean* include http response codes. `default = false` * `response_code_grouped` *boolean* include http response codes grouped by 100, e.g. 5xx. `default = false` +* `response_code_tag` *boolean* include http response codes as tags. `default = false` ## License diff --git a/lib/index.js b/lib/index.js index 435fa4c..c33e96f 100644 --- a/lib/index.js +++ b/lib/index.js @@ -8,6 +8,7 @@ module.exports = function (options) { var base_url = options.base_url || false; var response_code = options.response_code || false; var response_code_grouped = options.response_code_grouped || false; + var response_code_tag = options.response_code_tag || false; var route_tag = typeof options.route_tag === 'function' ? options.route_tag : null; return function (req, res, next) { @@ -45,7 +46,7 @@ module.exports = function (options) { statTags.push("path:" + baseUrl + req.path); } - if (response_code || response_code_grouped) { + if (response_code || response_code_grouped || response_code_tag) { statTags.push("response_code:" + res.statusCode); } diff --git a/package.json b/package.json index 6472c78..c1b2c99 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mergermarket/connect-datadog", - "version": "0.2.0", + "version": "0.3.0", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": { From 755ec49e388c3db1aa115baa0e467ba012f33bcd Mon Sep 17 00:00:00 2001 From: Grzegorz Faryna Date: Fri, 20 Sep 2024 13:14:24 +0200 Subject: [PATCH 15/16] Use newer node image to publish package. The old one does not work. --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index b9d1c35..ef34edf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM node:10.15-slim +FROM node:20-slim RUN apt-get update && apt-get install -y git WORKDIR /app From 468a202982de07adcbbaf6292d6f9eac8cc02fdd Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 20 Sep 2024 11:15:14 +0000 Subject: [PATCH 16/16] 1.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c1b2c99..c1de2d5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mergermarket/connect-datadog", - "version": "0.3.0", + "version": "1.0.0", "description": "Datadog middleware for Connect JS / Express", "main": "index.js", "repository": {