From a8bac181a41d44ea626e4e1a0498a6d72ac60815 Mon Sep 17 00:00:00 2001 From: Phil Kunz Date: Sun, 4 Nov 2018 18:44:28 +0100 Subject: [PATCH] fix(core): update --- package-lock.json | 6 +++--- package.json | 4 ++-- test/test.ts | 5 +++-- ts/logdna.classes.logmessage.ts | 6 ++++++ ts/logdna.logdnaaccount.ts | 22 ++++++++++++---------- 5 files changed, 26 insertions(+), 17 deletions(-) diff --git a/package-lock.json b/package-lock.json index f7901ef..f0f3cc8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -137,9 +137,9 @@ } }, "@pushrocks/smartlog-interfaces": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@pushrocks/smartlog-interfaces/-/smartlog-interfaces-2.0.1.tgz", - "integrity": "sha512-c9onE52z/5fGX5uEvaI/rXbcC6n7PkLrNjehRM+6JsK7HIbdAzrgY1PGrqUfW0a03hSe03mFcggORID+fQI4tA==" + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@pushrocks/smartlog-interfaces/-/smartlog-interfaces-2.0.2.tgz", + "integrity": "sha512-kJNQ/6kfljgtwebhoiD8WtRWfdVhOoE1nr8FoUJLlOjLphU8SPa42Hg6/yPkSTaGxWwDhk6PkMJl64O7HNjRUQ==" }, "@pushrocks/smartpath": { "version": "4.0.1", diff --git a/package.json b/package.json index dadc18a..cae6c59 100644 --- a/package.json +++ b/package.json @@ -22,9 +22,9 @@ "tslint-config-prettier": "^1.15.0" }, "dependencies": { - "@pushrocks/smartlog-interfaces": "^2.0.1", + "@pushrocks/smartlog-interfaces": "^2.0.2", "@pushrocks/smartrequest": "^1.1.14", "@pushrocks/smartstring": "^3.0.4", "@pushrocks/taskbuffer": "^2.0.5" } -} +} \ No newline at end of file diff --git a/test/test.ts b/test/test.ts index 0f5e061..b540911 100644 --- a/test/test.ts +++ b/test/test.ts @@ -14,7 +14,8 @@ tap.test('should create a valid logDna account', async () => { tap.test('should create a standard log message', async () => { testLogMessage = logdna.LogdnaMessage.fromSmartLogPackage({ - type: 'log', + timestamp: Date.now(), + type: 'log', level: 'info', context: { company: 'Lossless GmbH', @@ -24,7 +25,7 @@ tap.test('should create a standard log message', async () => { runtime: 'node', zone: 'shipzone' }, - message: 'this is an awesome log message :)' + message: 'this is an awesome log message sent by the tapbundle test' }); }); diff --git a/ts/logdna.classes.logmessage.ts b/ts/logdna.classes.logmessage.ts index 303ce3c..af740d3 100644 --- a/ts/logdna.classes.logmessage.ts +++ b/ts/logdna.classes.logmessage.ts @@ -6,6 +6,11 @@ import { TLogLevel, TEnvironment, ILogPackage } from '@pushrocks/smartlog-interf * the constructor options for LogdnaMessage */ export interface ILogdnaMessageContructorOptions { + /** + * a timestamp for then the log message was created + */ + timestamp: number; + /** * the hostname where the log message was created */ @@ -62,6 +67,7 @@ export class LogdnaMessage { */ static fromSmartLogPackage(smartlogPackageArg: ILogPackage): LogdnaMessage { return new LogdnaMessage({ + timestamp: smartlogPackageArg.timestamp, line: smartlogPackageArg.message, meta: { ...smartlogPackageArg.context, diff --git a/ts/logdna.logdnaaccount.ts b/ts/logdna.logdnaaccount.ts index 2cc9aaa..c97bc5a 100644 --- a/ts/logdna.logdnaaccount.ts +++ b/ts/logdna.logdnaaccount.ts @@ -37,21 +37,23 @@ export class LogdnaAccount { // let construct the request uri const requestUrlWithParams = `${this.baseUrl}?hostname=${euc(lm.options.hostname)}&mac=${euc( lm.options.mac - )}&ip=1${euc(lm.options.ip)}&now=${Date.now()}`; + )}&ip=1${euc(lm.options.ip)}&now=${Date.now()}&tags=${euc( + (() => { + return lm.options.tags.reduce((reduced, newItem) => { + return `${reduced},${newItem}`; + }); + })() + )}`; const requestBodyObject = { lines: [ { + timestamp: lm.options.timestamp, line: lm.options.line, app: lm.options.app, level: lm.options.level, env: lm.options.env, - meta: lm.options.meta, - tags: (() => { - return lm.options.tags.reduce((reduced, newItem) => { - return `${reduced},${newItem}`; - }); - })() + meta: lm.options.meta } ] }; @@ -71,16 +73,16 @@ export class LogdnaAccount { /** * convenience function for smartlog */ - public async sendSmartlogPackage (smartlogPackageArg: ILogPackage) { + public async sendSmartlogPackage(smartlogPackageArg: ILogPackage) { this.sendLogDnaMessage(LogdnaMessage.fromSmartLogPackage(smartlogPackageArg)); } /** * returns a smartlog compatible log destination */ - public get smartlogDestination (): ILogDestination { + public get smartlogDestination(): ILogDestination { return { - handleLog: (logPackageArg) => { + handleLog: logPackageArg => { this.sendSmartlogPackage(logPackageArg); } };