From 3305b52c47fbbe36f25ba96762427ec1324fd71b Mon Sep 17 00:00:00 2001 From: wescai <35978557@qq.com> Date: Sat, 9 May 2020 18:33:25 +0800 Subject: [PATCH 01/12] fix: add report error log --- src/instrumentation/tencent-serverless-http.js | 7 ++++++- src/report.js | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/instrumentation/tencent-serverless-http.js b/src/instrumentation/tencent-serverless-http.js index 8babbda..9bc33df 100644 --- a/src/instrumentation/tencent-serverless-http.js +++ b/src/instrumentation/tencent-serverless-http.js @@ -11,7 +11,12 @@ module.exports = function initialize(agent, httpProxy) { agent.once('responseFinish', function(ctx, data) { if (ctx) { report.reportHttp(ctx, data).then( - function() { + function(_data) { + const { Response } = _data || {} + const { Error: error } = Response || {} + if (error && error.Message) { + console.warn('Report monitor data error: ' + error.Message) + } resolve(proxy) }, function() { diff --git a/src/report.js b/src/report.js index 8bea90a..63fa6c3 100644 --- a/src/report.js +++ b/src/report.js @@ -35,7 +35,7 @@ exports.reportHttp = async function(context, { latency, method, path, statusCode } = environment const Region = tencentcloud_region || envTencentRegion || envRegion || 'ap-guangzhou' if (!SecretId || !SecretKey) { - logger.warn('No SecretId or SecretKey in environment parameters.') + logger.warn('Report monitor data error: No SecretId or SecretKey in environment parameters.') return } const client = new Capi({ From da42f871b5901a1b96eb82386f03deff051492ee Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Sat, 9 May 2020 10:37:00 +0000 Subject: [PATCH 02/12] chore(release): version 1.0.2 ## [1.0.2](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.1...v1.0.2) (2020-05-09) ### Bug Fixes * add report error log ([3305b52](https://github.com/serverless-tencent/tencent-component-monitor/commit/3305b52c47fbbe36f25ba96762427ec1324fd71b)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a8f5d88..b73fc9b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [1.0.2](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.1...v1.0.2) (2020-05-09) + + +### Bug Fixes + +* add report error log ([3305b52](https://github.com/serverless-tencent/tencent-component-monitor/commit/3305b52c47fbbe36f25ba96762427ec1324fd71b)) + ## [1.0.1](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.0...v1.0.1) (2020-05-08) diff --git a/package.json b/package.json index b69fbc8..12c22fe 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tencent-component-monitor", - "version": "1.0.1", + "version": "1.0.2", "description": "Tencent component monitor", "main": "src/index.js", "scripts": { From d9e4dc6ddccc3c8b84c0ce0152efb4bf3799a236 Mon Sep 17 00:00:00 2001 From: wescai <35978557@qq.com> Date: Wed, 13 May 2020 20:26:49 +0800 Subject: [PATCH 03/12] =?UTF-8?q?fix:=20=E8=8E=B7=E5=8F=96context=E6=96=B9?= =?UTF-8?q?=E5=BC=8F=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/instrumentation/core/http.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/instrumentation/core/http.js b/src/instrumentation/core/http.js index 4043bf0..59c1fa0 100644 --- a/src/instrumentation/core/http.js +++ b/src/instrumentation/core/http.js @@ -15,7 +15,7 @@ function wrapEmitWithTransaction(agent, emit) { const statusCode = String(response.statusCode) const path = transaction.path || request.path if (/^\d+$/.test(statusCode)) { - const context = request.headers['x-apigateway-context'] + const context = request.__SLS_CONTEXT__ const latency = Date.now() - transaction.start const data = { latency, From f60a4831a03790e82d1d0950c3a024c37c670440 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 13 May 2020 12:30:00 +0000 Subject: [PATCH 04/12] chore(release): version 1.0.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## [1.0.3](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.2...v1.0.3) (2020-05-13) ### Bug Fixes * 获取context方式修改 ([d9e4dc6](https://github.com/serverless-tencent/tencent-component-monitor/commit/d9e4dc6ddccc3c8b84c0ce0152efb4bf3799a236)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b73fc9b..37750fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [1.0.3](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.2...v1.0.3) (2020-05-13) + + +### Bug Fixes + +* 获取context方式修改 ([d9e4dc6](https://github.com/serverless-tencent/tencent-component-monitor/commit/d9e4dc6ddccc3c8b84c0ce0152efb4bf3799a236)) + ## [1.0.2](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.1...v1.0.2) (2020-05-09) diff --git a/package.json b/package.json index 12c22fe..9dd79ed 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tencent-component-monitor", - "version": "1.0.2", + "version": "1.0.3", "description": "Tencent component monitor", "main": "src/index.js", "scripts": { From 286fe4bb38e946cabeae61aa88cf40a4f05c0089 Mon Sep 17 00:00:00 2001 From: yugasun Date: Wed, 13 May 2020 22:10:47 +0800 Subject: [PATCH 05/12] fix: remove context decode --- src/report.js | 1 - 1 file changed, 1 deletion(-) diff --git a/src/report.js b/src/report.js index 63fa6c3..221073f 100644 --- a/src/report.js +++ b/src/report.js @@ -15,7 +15,6 @@ function str2hex(str) { exports.reportHttp = async function(context, { latency, method, path, statusCode }) { try { - context = JSON.parse(decodeURIComponent(context)) // 自定级监控上报的指标名只支持【a-zA-Z0-9_-】,所以把path进行转义上报 path = str2hex(path) const ServiceType = 'monitor' From 2819a2cf5fccc2cad087a5e849a85a85535a1d5c Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 13 May 2020 14:15:25 +0000 Subject: [PATCH 06/12] chore(release): version 1.0.4 ## [1.0.4](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.3...v1.0.4) (2020-05-13) ### Bug Fixes * remove context decode ([286fe4b](https://github.com/serverless-tencent/tencent-component-monitor/commit/286fe4bb38e946cabeae61aa88cf40a4f05c0089)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 37750fc..ade6d4e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [1.0.4](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.3...v1.0.4) (2020-05-13) + + +### Bug Fixes + +* remove context decode ([286fe4b](https://github.com/serverless-tencent/tencent-component-monitor/commit/286fe4bb38e946cabeae61aa88cf40a4f05c0089)) + ## [1.0.3](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.2...v1.0.3) (2020-05-13) diff --git a/package.json b/package.json index 9dd79ed..f0040bd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tencent-component-monitor", - "version": "1.0.3", + "version": "1.0.4", "description": "Tencent component monitor", "main": "src/index.js", "scripts": { From 62afa5ba57e15af53382290d95b23ef32c30b68f Mon Sep 17 00:00:00 2001 From: wescai <35978557@qq.com> Date: Wed, 20 May 2020 10:18:13 +0800 Subject: [PATCH 07/12] fix: remove monitor log --- src/instrumentation/tencent-serverless-http.js | 12 ++++++------ src/instrumentations.js | 1 - src/report.js | 4 ++-- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/instrumentation/tencent-serverless-http.js b/src/instrumentation/tencent-serverless-http.js index 9bc33df..ce8ccbf 100644 --- a/src/instrumentation/tencent-serverless-http.js +++ b/src/instrumentation/tencent-serverless-http.js @@ -11,12 +11,12 @@ module.exports = function initialize(agent, httpProxy) { agent.once('responseFinish', function(ctx, data) { if (ctx) { report.reportHttp(ctx, data).then( - function(_data) { - const { Response } = _data || {} - const { Error: error } = Response || {} - if (error && error.Message) { - console.warn('Report monitor data error: ' + error.Message) - } + function(/* _data*/) { + // const { Response } = _data || {} + // const { Error: error } = Response || {} + // if (error && error.Message) { + // console.warn('Report monitor data error: ' + error.Message) + // } resolve(proxy) }, function() { diff --git a/src/instrumentations.js b/src/instrumentations.js index ab73095..f761935 100644 --- a/src/instrumentations.js +++ b/src/instrumentations.js @@ -3,7 +3,6 @@ const { MODULE_TYPE } = require('./constants') module.exports = function instrumentations() { return { express: { type: MODULE_TYPE.WEB_FRAMEWORK }, - finalhandler: { type: MODULE_TYPE.WEB_FRAMEWORK }, 'tencent-serverless-http': { type: MODULE_TYPE.PROXY } } } diff --git a/src/report.js b/src/report.js index 221073f..77a30dc 100644 --- a/src/report.js +++ b/src/report.js @@ -1,5 +1,5 @@ const { Capi } = require('@tencent-sdk/capi') -const logger = require('./logger') +// const logger = require('./logger') // 字符串转16进制 function str2hex(str) { @@ -34,7 +34,7 @@ exports.reportHttp = async function(context, { latency, method, path, statusCode } = environment const Region = tencentcloud_region || envTencentRegion || envRegion || 'ap-guangzhou' if (!SecretId || !SecretKey) { - logger.warn('Report monitor data error: No SecretId or SecretKey in environment parameters.') + // logger.warn('Report monitor data error: No SecretId or SecretKey in environment parameters.') return } const client = new Capi({ From 50e2da5c370cd7586acb207413700ef9af518916 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Wed, 20 May 2020 02:20:46 +0000 Subject: [PATCH 08/12] chore(release): version 1.0.5 ## [1.0.5](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.4...v1.0.5) (2020-05-20) ### Bug Fixes * remove monitor log ([62afa5b](https://github.com/serverless-tencent/tencent-component-monitor/commit/62afa5ba57e15af53382290d95b23ef32c30b68f)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ade6d4e..9b20f29 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [1.0.5](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.4...v1.0.5) (2020-05-20) + + +### Bug Fixes + +* remove monitor log ([62afa5b](https://github.com/serverless-tencent/tencent-component-monitor/commit/62afa5ba57e15af53382290d95b23ef32c30b68f)) + ## [1.0.4](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.3...v1.0.4) (2020-05-13) diff --git a/package.json b/package.json index f0040bd..4796f40 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tencent-component-monitor", - "version": "1.0.4", + "version": "1.0.5", "description": "Tencent component monitor", "main": "src/index.js", "scripts": { From a3f75dd05469e35204da38e3401b449539f685c0 Mon Sep 17 00:00:00 2001 From: wescai <35978557@qq.com> Date: Mon, 25 May 2020 15:30:02 +0800 Subject: [PATCH 09/12] =?UTF-8?q?fix:=20=E4=B8=8A=E6=8A=A5=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0100ms=E8=B6=85=E6=97=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- src/report.js | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 4796f40..98566f0 100644 --- a/package.json +++ b/package.json @@ -69,6 +69,6 @@ "semantic-release": "^17.0.4" }, "dependencies": { - "@tencent-sdk/capi": "0.2.15" + "@tencent-sdk/capi": "^0.2.16" } } diff --git a/src/report.js b/src/report.js index 77a30dc..976363d 100644 --- a/src/report.js +++ b/src/report.js @@ -50,7 +50,8 @@ exports.reportHttp = async function(context, { latency, method, path, statusCode } const debugOptions = { debug: false, - host: 'monitor.tencentcloudapi.com' + host: 'monitor.tencentcloudapi.com', + timeout: 100 } const keyPrefix = `${method}_${path}` From 09e4cef47efab97765f9447dd19893378586c203 Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Mon, 25 May 2020 07:32:25 +0000 Subject: [PATCH 10/12] chore(release): version 1.0.6 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## [1.0.6](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.5...v1.0.6) (2020-05-25) ### Bug Fixes * 上报增加100ms超时 ([a3f75dd](https://github.com/serverless-tencent/tencent-component-monitor/commit/a3f75dd05469e35204da38e3401b449539f685c0)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9b20f29..77c89bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +## [1.0.6](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.5...v1.0.6) (2020-05-25) + + +### Bug Fixes + +* 上报增加100ms超时 ([a3f75dd](https://github.com/serverless-tencent/tencent-component-monitor/commit/a3f75dd05469e35204da38e3401b449539f685c0)) + ## [1.0.5](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.4...v1.0.5) (2020-05-20) diff --git a/package.json b/package.json index 98566f0..e7cb5be 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tencent-component-monitor", - "version": "1.0.5", + "version": "1.0.6", "description": "Tencent component monitor", "main": "src/index.js", "scripts": { From 982b4182e513255f0d093c53aaf3136e0576cdd7 Mon Sep 17 00:00:00 2001 From: yugasun Date: Thu, 28 May 2020 16:43:46 +0800 Subject: [PATCH 11/12] feat: support no report flag --- src/instrumentation/core/http.js | 2 +- src/instrumentation/tencent-serverless-http.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/instrumentation/core/http.js b/src/instrumentation/core/http.js index 59c1fa0..dfb3fbd 100644 --- a/src/instrumentation/core/http.js +++ b/src/instrumentation/core/http.js @@ -23,7 +23,7 @@ function wrapEmitWithTransaction(agent, emit) { method: request.method, statusCode } - agent.emit('responseFinish', context, data) + agent.emit('responseFinish', context, data, request.__SLS_NO_REPORT__) } } transaction.end() diff --git a/src/instrumentation/tencent-serverless-http.js b/src/instrumentation/tencent-serverless-http.js index ce8ccbf..7b64ef8 100644 --- a/src/instrumentation/tencent-serverless-http.js +++ b/src/instrumentation/tencent-serverless-http.js @@ -8,8 +8,8 @@ module.exports = function initialize(agent, httpProxy) { transaction.init() const proxy = fn.apply(this, arguments) return new Promise(function(resolve) { - agent.once('responseFinish', function(ctx, data) { - if (ctx) { + agent.once('responseFinish', function(ctx, data, noReport) { + if (ctx && noReport !== true) { report.reportHttp(ctx, data).then( function(/* _data*/) { // const { Response } = _data || {} From 9f725c68b98fcf93970598f7f12a3e6049c8f85c Mon Sep 17 00:00:00 2001 From: semantic-release-bot Date: Thu, 28 May 2020 08:49:18 +0000 Subject: [PATCH 12/12] chore(release): version 1.1.0 # [1.1.0](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.6...v1.1.0) (2020-05-28) ### Features * support no report flag ([982b418](https://github.com/serverless-tencent/tencent-component-monitor/commit/982b4182e513255f0d093c53aaf3136e0576cdd7)) --- CHANGELOG.md | 7 +++++++ package.json | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 77c89bb..869534a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +# [1.1.0](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.6...v1.1.0) (2020-05-28) + + +### Features + +* support no report flag ([982b418](https://github.com/serverless-tencent/tencent-component-monitor/commit/982b4182e513255f0d093c53aaf3136e0576cdd7)) + ## [1.0.6](https://github.com/serverless-tencent/tencent-component-monitor/compare/v1.0.5...v1.0.6) (2020-05-25) diff --git a/package.json b/package.json index e7cb5be..50bb92f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tencent-component-monitor", - "version": "1.0.6", + "version": "1.1.0", "description": "Tencent component monitor", "main": "src/index.js", "scripts": {