@logtail/pino 0.4.2 → 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@logtail/pino",
3
- "version": "0.4.2",
3
+ "version": "0.4.3",
4
4
  "description": "Logtail Pino transport by Better Stack",
5
5
  "keywords": [
6
6
  "Better Stack",
@@ -37,8 +37,8 @@
37
37
  "pino": "^7.0.0 || ^8.0.0"
38
38
  },
39
39
  "dependencies": {
40
- "@logtail/node": "^0.4.2",
41
- "@logtail/types": "^0.4.2",
40
+ "@logtail/node": "^0.4.3",
41
+ "@logtail/types": "^0.4.3",
42
42
  "pino-abstract-transport": "^1.0.0"
43
43
  },
44
44
  "scripts": {
@@ -49,5 +49,5 @@
49
49
  "test": "echo \"Error: run tests from root\" && exit 1"
50
50
  },
51
51
  "private": false,
52
- "gitHead": "75161d956af3eed472917b6fd3a5d89face8961d"
52
+ "gitHead": "0f816cacc21b352576a5707741f9151aa1481041"
53
53
  }
@@ -1,7 +0,0 @@
1
- /// <reference types="node" />
2
- import { PinoLokiOptionsContract } from "./Contracts";
3
- export default function(
4
- options: PinoLokiOptionsContract
5
- ): Promise<
6
- import("stream").Transform & import("pino-abstract-transport").OnUnknown
7
- >;
@@ -1,62 +0,0 @@
1
- "use strict";
2
- var __asyncValues = (this && this.__asyncValues) || function (o) {
3
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
4
- var m = o[Symbol.asyncIterator], i;
5
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
6
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
7
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
8
- };
9
- var __importDefault = (this && this.__importDefault) || function (mod) {
10
- return (mod && mod.__esModule) ? mod : { "default": mod };
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- const pino_abstract_transport_1 = __importDefault(require("pino-abstract-transport"));
14
- const LogPusher_1 = require("./LogPusher");
15
- async function default_1(options) {
16
- var _a, _b, _c, _d, _e, _f;
17
- (_a = options.timeout) !== null && _a !== void 0 ? _a : ;
18
- 30000;
19
- (_b = options.silenceErrors) !== null && _b !== void 0 ? _b : ;
20
- false;
21
- (_c = options.batching) !== null && _c !== void 0 ? _c : ;
22
- true;
23
- (_d = options.interval) !== null && _d !== void 0 ? _d : ;
24
- 5;
25
- (_e = options.replaceTimestamp) !== null && _e !== void 0 ? _e : ;
26
- false;
27
- (_f = options.propsToLabels) !== null && _f !== void 0 ? _f : ;
28
- [];
29
- const logPusher = new LogPusher_1.LogPusher(options);
30
- return pino_abstract_transport_1.default(async (source) => {
31
- var e_1, _a;
32
- let pinoLogBuffer = [];
33
- if (options.batching) {
34
- setInterval(async () => {
35
- if (pinoLogBuffer.length === 0) {
36
- return;
37
- }
38
- logPusher.push(pinoLogBuffer);
39
- pinoLogBuffer = [];
40
- }, options.interval * 1000);
41
- }
42
- try {
43
- for (var source_1 = __asyncValues(source), source_1_1; source_1_1 = await source_1.next(), !source_1_1.done;) {
44
- let obj = source_1_1.value;
45
- if (options.batching) {
46
- pinoLogBuffer.push(obj);
47
- continue;
48
- }
49
- logPusher.push(obj);
50
- }
51
- }
52
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
53
- finally {
54
- try {
55
- if (source_1_1 && !source_1_1.done && (_a = source_1.return)) await _a.call(source_1);
56
- }
57
- finally { if (e_1) throw e_1.error; }
58
- }
59
- });
60
- }
61
- exports.default = default_1;
62
- //# sourceMappingURL=pino-loki-index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pino-loki-index.js","sourceRoot":"","sources":["../../src/pino-loki-index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sFAA2C;AAE3C,2CAAuC;AAExB,KAAK,oBAAW,OAAgC;;IAC7D,MAAA,OAAO,CAAC,OAAO,mCAAG,CAAA;IAAE,KAAK,CAAA;IACzB,MAAA,OAAO,CAAC,aAAa,mCAAG,CAAA;IAAE,KAAK,CAAA;IAC/B,MAAA,OAAO,CAAC,QAAQ,mCAAG,CAAA;IAAE,IAAI,CAAA;IACzB,MAAA,OAAO,CAAC,QAAQ,mCAAG,CAAA;IAAE,CAAC,CAAA;IACtB,MAAA,OAAO,CAAC,gBAAgB,mCAAG,CAAA;IAAE,KAAK,CAAA;IAClC,MAAA,OAAO,CAAC,aAAa,mCAAG,CAAA;IAAE,EAAE,CAAA;IAC5B,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,OAAO,CAAC,CAAA;IAExC,OAAO,iCAAK,CAAC,KAAK,EAAE,MAAW,EAAE,EAAE;;QACjC,IAAI,aAAa,GAAc,EAAE,CAAA;QAEjC,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpB,WAAW,CAAC,KAAK,IAAI,EAAE;gBACrB,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC9B,OAAM;iBACP;gBAED,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC7B,aAAa,GAAG,EAAE,CAAA;YACpB,CAAC,EAAE,OAAO,CAAC,QAAS,GAAG,IAAI,CAAC,CAAA;SAC7B;;YAED,KAAsB,IAAA,WAAA,cAAA,MAAM,CAAA,YAAA;gBAAjB,IAAI,GAAG,mBAAA,CAAA;gBAChB,IAAI,OAAO,CAAC,QAAQ,EAAE;oBACpB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACvB,SAAQ;iBACT;gBAED,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aACpB;;;;;;;;;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAhCD,4BAgCC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,119 +0,0 @@
1
- "use strict";
2
- var __importDefault =
3
- (this && this.__importDefault) ||
4
- function(mod) {
5
- return mod && mod.__esModule ? mod : { default: mod };
6
- };
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- const pino_1 = __importDefault(require("pino"));
9
- const node_1 = require("@logtail/node");
10
- const types_1 = require("@logtail/types");
11
- // Numeric log level test type
12
- // type LevelTest = [number, LogLevel, LogLevelString];
13
- // Sample log message
14
- const message = "Something to do with something";
15
- /**
16
- * Create a Pino logger instance with Logtail transport
17
- *
18
- */
19
- function createLogger() {
20
- const token = "invalid source token";
21
- const logtailOptions = { ignoreExceptions: true };
22
- const options = { sourceToken: token, options: logtailOptions };
23
- const transport = pino_1.default.transport({
24
- target: "./pino.js",
25
- options: options
26
- });
27
- return pino_1.default(transport);
28
- }
29
- /**
30
- * Test a Bunyan log level vs. a Logtail `LogLevel`
31
- *
32
- * @param level LogLevelString - Bunyan log level (string)
33
- * @param logLevel LogLevel - Logtail log level
34
- * @param cb Function - Callback to execute to signal test completion
35
- */
36
- async function testLevel(level, logLevel, cb) {
37
- // Logtail fixtures
38
- const logtail = new node_1.Logtail("test", { batchInterval: 1 });
39
- logtail.setSync(async logs => {
40
- // Should be exactly one log
41
- expect(logs.length).toBe(1);
42
- // Message should match
43
- expect(logs[0].message).toBe(message);
44
- // Log level should be 'info'
45
- expect(logs[0].level).toBe(logLevel);
46
- // Signal that the test has finished
47
- setImmediate(() => cb());
48
- return logs;
49
- });
50
- // Create Bunyan logger
51
- const logger = createLogger(logtail);
52
- // Log out to Bunyan
53
- logger[level](message);
54
- }
55
- describe("Bunyan tests", () => {
56
- it("should log at the 'debug' level", async done => {
57
- return testLevel("debug", types_1.LogLevel.Debug, done);
58
- });
59
- it("should log at the 'info' level", async done => {
60
- return testLevel("info", types_1.LogLevel.Info, done);
61
- });
62
- it("should log at the 'warn' level", async done => {
63
- return testLevel("warn", types_1.LogLevel.Warn, done);
64
- });
65
- it("should log at the 'error' level", async done => {
66
- return testLevel("error", types_1.LogLevel.Error, done);
67
- });
68
- it("should log at the 'fatal' level", async done => {
69
- return testLevel("fatal", types_1.LogLevel.Error, done);
70
- });
71
- it("should log using number levels", async done => {
72
- // Fixtures
73
- const levels = [
74
- [25, types_1.LogLevel.Debug, "debug"],
75
- [35, types_1.LogLevel.Info, "info"],
76
- [45, types_1.LogLevel.Warn, "warn"],
77
- [55, types_1.LogLevel.Error, "error"]
78
- ];
79
- const logtail = new node_1.Logtail("test", {
80
- batchInterval: 1000,
81
- batchSize: levels.length
82
- });
83
- logtail.setSync(async logs => {
84
- expect(logs.length).toBe(levels.length);
85
- done();
86
- return logs;
87
- });
88
- // Create Bunyan logger
89
- const logger = createLogger(logtail);
90
- // Cycle through levels, and log
91
- levels.forEach(level => logger[level[2]](message));
92
- });
93
- it("should include arbitrary extra data fields", async done => {
94
- const logtail = new node_1.Logtail("test");
95
- logtail.setSync(async logs => {
96
- expect(logs).toHaveLength(1);
97
- expect(logs[0].message).toEqual("i am the message");
98
- expect(logs[0].foo).toEqual("bar");
99
- expect(logs[0].some).toEqual({ nested: "stuff" });
100
- done();
101
- return logs;
102
- });
103
- const logger = createLogger(logtail);
104
- logger.info({ foo: "bar", some: { nested: "stuff" } }, "i am the message");
105
- });
106
- it("should include correct context fields", async done => {
107
- const logtail = new node_1.Logtail("test");
108
- logtail.setSync(async logs => {
109
- const context = logs[0].context;
110
- const runtime = context.runtime;
111
- expect(runtime.file).toEqual("bunyan.test.ts");
112
- done();
113
- return logs;
114
- });
115
- const logger = createLogger(logtail);
116
- logger.info("message with context");
117
- });
118
- });
119
- //# sourceMappingURL=pino.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pino.test.js","sourceRoot":"","sources":["../../src/pino.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /// <reference types="node" />
2
- import { PinoLokiOptionsContract } from "./Contracts";
3
- export default function(
4
- options: PinoLokiOptionsContract
5
- ): Promise<
6
- import("stream").Transform & import("pino-abstract-transport").OnUnknown
7
- >;
@@ -1,56 +0,0 @@
1
- var __asyncValues = (this && this.__asyncValues) || function (o) {
2
- if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
3
- var m = o[Symbol.asyncIterator], i;
4
- return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
5
- function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
6
- function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
7
- };
8
- import build from 'pino-abstract-transport';
9
- import { LogPusher } from './LogPusher';
10
- export default async function (options) {
11
- var _a, _b, _c, _d, _e, _f;
12
- (_a = options.timeout) !== null && _a !== void 0 ? _a : ;
13
- 30000;
14
- (_b = options.silenceErrors) !== null && _b !== void 0 ? _b : ;
15
- false;
16
- (_c = options.batching) !== null && _c !== void 0 ? _c : ;
17
- true;
18
- (_d = options.interval) !== null && _d !== void 0 ? _d : ;
19
- 5;
20
- (_e = options.replaceTimestamp) !== null && _e !== void 0 ? _e : ;
21
- false;
22
- (_f = options.propsToLabels) !== null && _f !== void 0 ? _f : ;
23
- [];
24
- const logPusher = new LogPusher(options);
25
- return build(async (source) => {
26
- var e_1, _a;
27
- let pinoLogBuffer = [];
28
- if (options.batching) {
29
- setInterval(async () => {
30
- if (pinoLogBuffer.length === 0) {
31
- return;
32
- }
33
- logPusher.push(pinoLogBuffer);
34
- pinoLogBuffer = [];
35
- }, options.interval * 1000);
36
- }
37
- try {
38
- for (var source_1 = __asyncValues(source), source_1_1; source_1_1 = await source_1.next(), !source_1_1.done;) {
39
- let obj = source_1_1.value;
40
- if (options.batching) {
41
- pinoLogBuffer.push(obj);
42
- continue;
43
- }
44
- logPusher.push(obj);
45
- }
46
- }
47
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
48
- finally {
49
- try {
50
- if (source_1_1 && !source_1_1.done && (_a = source_1.return)) await _a.call(source_1);
51
- }
52
- finally { if (e_1) throw e_1.error; }
53
- }
54
- });
55
- }
56
- //# sourceMappingURL=pino-loki-index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pino-loki-index.js","sourceRoot":"","sources":["../../src/pino-loki-index.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,KAAK,MAAM,yBAAyB,CAAA;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,CAAC,OAAO,CAAC,KAAK,WAAW,OAAgC;;IAC7D,MAAA,OAAO,CAAC,OAAO,mCAAG,CAAA;IAAE,KAAK,CAAA;IACzB,MAAA,OAAO,CAAC,aAAa,mCAAG,CAAA;IAAE,KAAK,CAAA;IAC/B,MAAA,OAAO,CAAC,QAAQ,mCAAG,CAAA;IAAE,IAAI,CAAA;IACzB,MAAA,OAAO,CAAC,QAAQ,mCAAG,CAAA;IAAE,CAAC,CAAA;IACtB,MAAA,OAAO,CAAC,gBAAgB,mCAAG,CAAA;IAAE,KAAK,CAAA;IAClC,MAAA,OAAO,CAAC,aAAa,mCAAG,CAAA;IAAE,EAAE,CAAA;IAC5B,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,CAAA;IAExC,OAAO,KAAK,CAAC,KAAK,EAAE,MAAW,EAAE,EAAE;;QACjC,IAAI,aAAa,GAAc,EAAE,CAAA;QAEjC,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpB,WAAW,CAAC,KAAK,IAAI,EAAE;gBACrB,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;oBAC9B,OAAM;iBACP;gBAED,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC7B,aAAa,GAAG,EAAE,CAAA;YACpB,CAAC,EAAE,OAAO,CAAC,QAAS,GAAG,IAAI,CAAC,CAAA;SAC7B;;YAED,KAAsB,IAAA,WAAA,cAAA,MAAM,CAAA,YAAA;gBAAjB,IAAI,GAAG,mBAAA,CAAA;gBAChB,IAAI,OAAO,CAAC,QAAQ,EAAE;oBACpB,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACvB,SAAQ;iBACT;gBAED,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aACpB;;;;;;;;;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,112 +0,0 @@
1
- import pino from "pino";
2
- import { Logtail } from "@logtail/node";
3
- import { LogLevel } from "@logtail/types";
4
- // Numeric log level test type
5
- // type LevelTest = [number, LogLevel, LogLevelString];
6
- // Sample log message
7
- const message = "Something to do with something";
8
- /**
9
- * Create a Pino logger instance with Logtail transport
10
- *
11
- */
12
- function createLogger() {
13
- const token = "invalid source token";
14
- const logtailOptions = { ignoreExceptions: true };
15
- const options = { sourceToken: token, options: logtailOptions };
16
- const transport = pino.transport({
17
- target: "./pino.js",
18
- options: options
19
- });
20
- return pino(transport);
21
- }
22
- /**
23
- * Test a Bunyan log level vs. a Logtail `LogLevel`
24
- *
25
- * @param level LogLevelString - Bunyan log level (string)
26
- * @param logLevel LogLevel - Logtail log level
27
- * @param cb Function - Callback to execute to signal test completion
28
- */
29
- async function testLevel(level, logLevel, cb) {
30
- // Logtail fixtures
31
- const logtail = new Logtail("test", { batchInterval: 1 });
32
- logtail.setSync(async logs => {
33
- // Should be exactly one log
34
- expect(logs.length).toBe(1);
35
- // Message should match
36
- expect(logs[0].message).toBe(message);
37
- // Log level should be 'info'
38
- expect(logs[0].level).toBe(logLevel);
39
- // Signal that the test has finished
40
- setImmediate(() => cb());
41
- return logs;
42
- });
43
- // Create Bunyan logger
44
- const logger = createLogger(logtail);
45
- // Log out to Bunyan
46
- logger[level](message);
47
- }
48
- describe("Bunyan tests", () => {
49
- it("should log at the 'debug' level", async done => {
50
- return testLevel("debug", LogLevel.Debug, done);
51
- });
52
- it("should log at the 'info' level", async done => {
53
- return testLevel("info", LogLevel.Info, done);
54
- });
55
- it("should log at the 'warn' level", async done => {
56
- return testLevel("warn", LogLevel.Warn, done);
57
- });
58
- it("should log at the 'error' level", async done => {
59
- return testLevel("error", LogLevel.Error, done);
60
- });
61
- it("should log at the 'fatal' level", async done => {
62
- return testLevel("fatal", LogLevel.Error, done);
63
- });
64
- it("should log using number levels", async done => {
65
- // Fixtures
66
- const levels = [
67
- [25, LogLevel.Debug, "debug"],
68
- [35, LogLevel.Info, "info"],
69
- [45, LogLevel.Warn, "warn"],
70
- [55, LogLevel.Error, "error"]
71
- ];
72
- const logtail = new Logtail("test", {
73
- batchInterval: 1000,
74
- batchSize: levels.length
75
- });
76
- logtail.setSync(async logs => {
77
- expect(logs.length).toBe(levels.length);
78
- done();
79
- return logs;
80
- });
81
- // Create Bunyan logger
82
- const logger = createLogger(logtail);
83
- // Cycle through levels, and log
84
- levels.forEach(level => logger[level[2]](message));
85
- });
86
- it("should include arbitrary extra data fields", async done => {
87
- const logtail = new Logtail("test");
88
- logtail.setSync(async logs => {
89
- expect(logs).toHaveLength(1);
90
- expect(logs[0].message).toEqual("i am the message");
91
- expect(logs[0].foo).toEqual("bar");
92
- expect(logs[0].some).toEqual({ nested: "stuff" });
93
- done();
94
- return logs;
95
- });
96
- const logger = createLogger(logtail);
97
- logger.info({ foo: "bar", some: { nested: "stuff" } }, "i am the message");
98
- });
99
- it("should include correct context fields", async done => {
100
- const logtail = new Logtail("test");
101
- logtail.setSync(async logs => {
102
- const context = logs[0].context;
103
- const runtime = context.runtime;
104
- expect(runtime.file).toEqual("bunyan.test.ts");
105
- done();
106
- return logs;
107
- });
108
- const logger = createLogger(logtail);
109
- logger.info("message with context");
110
- });
111
- });
112
- //# sourceMappingURL=pino.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pino.test.js","sourceRoot":"","sources":["../../src/pino.test.ts"],"names":[],"mappings":"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"}