@loglayer/transport-logflare 1.0.8 → 1.0.9

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/dist/index.cjs CHANGED
@@ -1,28 +1,4 @@
1
- //#region rolldown:runtime
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
10
- key = keys[i];
11
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
12
- get: ((k) => from[k]).bind(null, key),
13
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
14
- });
15
- }
16
- return to;
17
- };
18
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
19
- value: mod,
20
- enumerable: true
21
- }) : target, mod));
22
-
23
- //#endregion
24
1
  let __loglayer_transport_http = require("@loglayer/transport-http");
25
- __loglayer_transport_http = __toESM(__loglayer_transport_http);
26
2
 
27
3
  //#region src/LogflareTransport.ts
28
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["HttpTransport","logEntry: Record<string, any>","metadata: Record<string, any>"],"sources":["../src/LogflareTransport.ts"],"sourcesContent":["import type { HttpTransportConfig } from \"@loglayer/transport-http\";\nimport { HttpTransport } from \"@loglayer/transport-http\";\n\n/**\n * Configuration options for the Logflare transport.\n * This is essentially a wrapper around HttpTransport with Logflare specific defaults.\n */\nexport interface LogflareTransportConfig extends Omit<HttpTransportConfig, \"url\" | \"headers\" | \"payloadTemplate\"> {\n /**\n * Your Logflare source ID\n */\n sourceId: string;\n /**\n * Your Logflare API key\n */\n apiKey: string;\n /**\n * Custom Logflare API endpoint (for self-hosted instances)\n * @default \"https://api.logflare.app\"\n */\n url?: string;\n /**\n * Function to transform log data into the payload format (optional, defaults to Logflare format)\n */\n payloadTemplate?: (data: { logLevel: string; message: string; data?: Record<string, any> }) => string;\n}\n\n/**\n * LogflareTransport is responsible for sending logs to Logflare.\n * It extends HttpTransport with Logflare-specific configuration.\n *\n * Features:\n * - Automatic Logflare JSON format\n * - Retry logic with exponential backoff (via HttpTransport)\n * - Rate limiting support (via HttpTransport)\n * - Batch sending with configurable size and timeout (via HttpTransport)\n * - Error and debug callbacks\n * - Support for self-hosted Logflare instances\n */\nexport class LogflareTransport extends HttpTransport {\n constructor(config: LogflareTransportConfig) {\n const apiEndpoint = config.url ?? \"https://api.logflare.app\";\n const fullUrl = `${apiEndpoint}/logs/json?source=${config.sourceId}`;\n\n const payloadTemplate =\n config.payloadTemplate ??\n (({ logLevel, message, data }) => {\n const logEntry: Record<string, any> = {\n message,\n };\n\n // Always include level in metadata\n const metadata: Record<string, any> = {\n level: logLevel,\n };\n\n // Add additional metadata if data is provided\n if (data) {\n Object.assign(metadata, data);\n }\n\n logEntry.metadata = metadata;\n\n return JSON.stringify(logEntry);\n });\n\n // Create HTTP transport config, excluding Logflare-specific properties\n const httpConfig = { ...config };\n delete httpConfig.sourceId;\n delete httpConfig.apiKey;\n delete httpConfig.url;\n delete httpConfig.payloadTemplate;\n\n super({\n url: fullUrl,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"X-API-KEY\": config.apiKey,\n },\n payloadTemplate,\n batchMode: \"field\", // Use Logflare's batch format\n batchFieldName: \"batch\", // Use Logflare's batch field name\n ...httpConfig,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,IAAa,oBAAb,cAAuCA,wCAAc;CACnD,YAAY,QAAiC;EAE3C,MAAM,UAAU,GADI,OAAO,OAAO,2BACH,oBAAoB,OAAO;EAE1D,MAAM,kBACJ,OAAO,qBACL,EAAE,UAAU,SAAS,WAAW;GAChC,MAAMC,WAAgC,EACpC,SACD;GAGD,MAAMC,WAAgC,EACpC,OAAO,UACR;AAGD,OAAI,KACF,QAAO,OAAO,UAAU,KAAK;AAG/B,YAAS,WAAW;AAEpB,UAAO,KAAK,UAAU,SAAS;;EAInC,MAAM,aAAa,EAAE,GAAG,QAAQ;AAChC,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAElB,QAAM;GACJ,KAAK;GACL,QAAQ;GACR,SAAS;IACP,gBAAgB;IAChB,aAAa,OAAO;IACrB;GACD;GACA,WAAW;GACX,gBAAgB;GAChB,GAAG;GACJ,CAAC"}
1
+ {"version":3,"file":"index.cjs","names":["HttpTransport","logEntry: Record<string, any>","metadata: Record<string, any>"],"sources":["../src/LogflareTransport.ts"],"sourcesContent":["import type { HttpTransportConfig } from \"@loglayer/transport-http\";\nimport { HttpTransport } from \"@loglayer/transport-http\";\n\n/**\n * Configuration options for the Logflare transport.\n * This is essentially a wrapper around HttpTransport with Logflare specific defaults.\n */\nexport interface LogflareTransportConfig extends Omit<HttpTransportConfig, \"url\" | \"headers\" | \"payloadTemplate\"> {\n /**\n * Your Logflare source ID\n */\n sourceId: string;\n /**\n * Your Logflare API key\n */\n apiKey: string;\n /**\n * Custom Logflare API endpoint (for self-hosted instances)\n * @default \"https://api.logflare.app\"\n */\n url?: string;\n /**\n * Function to transform log data into the payload format (optional, defaults to Logflare format)\n */\n payloadTemplate?: (data: { logLevel: string; message: string; data?: Record<string, any> }) => string;\n}\n\n/**\n * LogflareTransport is responsible for sending logs to Logflare.\n * It extends HttpTransport with Logflare-specific configuration.\n *\n * Features:\n * - Automatic Logflare JSON format\n * - Retry logic with exponential backoff (via HttpTransport)\n * - Rate limiting support (via HttpTransport)\n * - Batch sending with configurable size and timeout (via HttpTransport)\n * - Error and debug callbacks\n * - Support for self-hosted Logflare instances\n */\nexport class LogflareTransport extends HttpTransport {\n constructor(config: LogflareTransportConfig) {\n const apiEndpoint = config.url ?? \"https://api.logflare.app\";\n const fullUrl = `${apiEndpoint}/logs/json?source=${config.sourceId}`;\n\n const payloadTemplate =\n config.payloadTemplate ??\n (({ logLevel, message, data }) => {\n const logEntry: Record<string, any> = {\n message,\n };\n\n // Always include level in metadata\n const metadata: Record<string, any> = {\n level: logLevel,\n };\n\n // Add additional metadata if data is provided\n if (data) {\n Object.assign(metadata, data);\n }\n\n logEntry.metadata = metadata;\n\n return JSON.stringify(logEntry);\n });\n\n // Create HTTP transport config, excluding Logflare-specific properties\n const httpConfig = { ...config };\n delete httpConfig.sourceId;\n delete httpConfig.apiKey;\n delete httpConfig.url;\n delete httpConfig.payloadTemplate;\n\n super({\n url: fullUrl,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"X-API-KEY\": config.apiKey,\n },\n payloadTemplate,\n batchMode: \"field\", // Use Logflare's batch format\n batchFieldName: \"batch\", // Use Logflare's batch field name\n ...httpConfig,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAuCA,IAAa,oBAAb,cAAuCA,wCAAc;CACnD,YAAY,QAAiC;EAE3C,MAAM,UAAU,GADI,OAAO,OAAO,2BACH,oBAAoB,OAAO;EAE1D,MAAM,kBACJ,OAAO,qBACL,EAAE,UAAU,SAAS,WAAW;GAChC,MAAMC,WAAgC,EACpC,SACD;GAGD,MAAMC,WAAgC,EACpC,OAAO,UACR;AAGD,OAAI,KACF,QAAO,OAAO,UAAU,KAAK;AAG/B,YAAS,WAAW;AAEpB,UAAO,KAAK,UAAU,SAAS;;EAInC,MAAM,aAAa,EAAE,GAAG,QAAQ;AAChC,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAElB,QAAM;GACJ,KAAK;GACL,QAAQ;GACR,SAAS;IACP,gBAAgB;IAChB,aAAa,OAAO;IACrB;GACD;GACA,WAAW;GACX,gBAAgB;GAChB,GAAG;GACJ,CAAC"}
@@ -46,4 +46,4 @@ declare class LogflareTransport extends HttpTransport {
46
46
  }
47
47
  //#endregion
48
48
  export { LogflareTransport, type LogflareTransportConfig };
49
- //# sourceMappingURL=index.d.ts.map
49
+ //# sourceMappingURL=index.d.mts.map
@@ -45,4 +45,4 @@ var LogflareTransport = class extends HttpTransport {
45
45
 
46
46
  //#endregion
47
47
  export { LogflareTransport };
48
- //# sourceMappingURL=index.js.map
48
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["logEntry: Record<string, any>","metadata: Record<string, any>"],"sources":["../src/LogflareTransport.ts"],"sourcesContent":["import type { HttpTransportConfig } from \"@loglayer/transport-http\";\nimport { HttpTransport } from \"@loglayer/transport-http\";\n\n/**\n * Configuration options for the Logflare transport.\n * This is essentially a wrapper around HttpTransport with Logflare specific defaults.\n */\nexport interface LogflareTransportConfig extends Omit<HttpTransportConfig, \"url\" | \"headers\" | \"payloadTemplate\"> {\n /**\n * Your Logflare source ID\n */\n sourceId: string;\n /**\n * Your Logflare API key\n */\n apiKey: string;\n /**\n * Custom Logflare API endpoint (for self-hosted instances)\n * @default \"https://api.logflare.app\"\n */\n url?: string;\n /**\n * Function to transform log data into the payload format (optional, defaults to Logflare format)\n */\n payloadTemplate?: (data: { logLevel: string; message: string; data?: Record<string, any> }) => string;\n}\n\n/**\n * LogflareTransport is responsible for sending logs to Logflare.\n * It extends HttpTransport with Logflare-specific configuration.\n *\n * Features:\n * - Automatic Logflare JSON format\n * - Retry logic with exponential backoff (via HttpTransport)\n * - Rate limiting support (via HttpTransport)\n * - Batch sending with configurable size and timeout (via HttpTransport)\n * - Error and debug callbacks\n * - Support for self-hosted Logflare instances\n */\nexport class LogflareTransport extends HttpTransport {\n constructor(config: LogflareTransportConfig) {\n const apiEndpoint = config.url ?? \"https://api.logflare.app\";\n const fullUrl = `${apiEndpoint}/logs/json?source=${config.sourceId}`;\n\n const payloadTemplate =\n config.payloadTemplate ??\n (({ logLevel, message, data }) => {\n const logEntry: Record<string, any> = {\n message,\n };\n\n // Always include level in metadata\n const metadata: Record<string, any> = {\n level: logLevel,\n };\n\n // Add additional metadata if data is provided\n if (data) {\n Object.assign(metadata, data);\n }\n\n logEntry.metadata = metadata;\n\n return JSON.stringify(logEntry);\n });\n\n // Create HTTP transport config, excluding Logflare-specific properties\n const httpConfig = { ...config };\n delete httpConfig.sourceId;\n delete httpConfig.apiKey;\n delete httpConfig.url;\n delete httpConfig.payloadTemplate;\n\n super({\n url: fullUrl,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"X-API-KEY\": config.apiKey,\n },\n payloadTemplate,\n batchMode: \"field\", // Use Logflare's batch format\n batchFieldName: \"batch\", // Use Logflare's batch field name\n ...httpConfig,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAuCA,IAAa,oBAAb,cAAuC,cAAc;CACnD,YAAY,QAAiC;EAE3C,MAAM,UAAU,GADI,OAAO,OAAO,2BACH,oBAAoB,OAAO;EAE1D,MAAM,kBACJ,OAAO,qBACL,EAAE,UAAU,SAAS,WAAW;GAChC,MAAMA,WAAgC,EACpC,SACD;GAGD,MAAMC,WAAgC,EACpC,OAAO,UACR;AAGD,OAAI,KACF,QAAO,OAAO,UAAU,KAAK;AAG/B,YAAS,WAAW;AAEpB,UAAO,KAAK,UAAU,SAAS;;EAInC,MAAM,aAAa,EAAE,GAAG,QAAQ;AAChC,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAElB,QAAM;GACJ,KAAK;GACL,QAAQ;GACR,SAAS;IACP,gBAAgB;IAChB,aAAa,OAAO;IACrB;GACD;GACA,WAAW;GACX,gBAAgB;GAChB,GAAG;GACJ,CAAC"}
package/package.json CHANGED
@@ -1,21 +1,22 @@
1
1
  {
2
2
  "name": "@loglayer/transport-logflare",
3
3
  "description": "Logflare transport for the LogLayer logging library.",
4
- "version": "1.0.8",
4
+ "version": "1.0.9",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
7
- "module": "./dist/index.js",
7
+ "module": "./dist/index.mjs",
8
8
  "exports": {
9
9
  "import": {
10
- "types": "./dist/index.d.ts",
11
- "import": "./dist/index.js"
10
+ "types": "./dist/index.d.mts",
11
+ "import": "./dist/index.mjs"
12
12
  },
13
13
  "require": {
14
14
  "types": "./dist/index.d.cts",
15
15
  "require": "./dist/index.cjs"
16
16
  }
17
17
  },
18
- "types": "./dist/index.d.ts",
18
+ "types": "./dist/index.d.mts",
19
+ "sideEffects": false,
19
20
  "license": "MIT",
20
21
  "repository": {
21
22
  "type": "git",
@@ -31,19 +32,19 @@
31
32
  "transport"
32
33
  ],
33
34
  "dependencies": {
34
- "@loglayer/transport-http": "1.1.8"
35
+ "@loglayer/transport-http": "1.1.9"
35
36
  },
36
37
  "devDependencies": {
37
- "@types/node": "24.10.1",
38
+ "@types/node": "24.10.2",
38
39
  "dotenv": "17.2.3",
39
40
  "serialize-error": "12.0.0",
40
- "tsdown": "0.15.12",
41
- "tsx": "4.20.6",
41
+ "tsdown": "0.17.2",
42
+ "tsx": "4.21.0",
42
43
  "typescript": "5.9.3",
43
- "vitest": "4.0.9",
44
+ "vitest": "4.0.15",
44
45
  "@internal/tsconfig": "2.1.0",
45
- "loglayer": "8.1.0",
46
- "@loglayer/transport": "2.3.10"
46
+ "@loglayer/transport": "2.3.11",
47
+ "loglayer": "8.1.1"
47
48
  },
48
49
  "bugs": "https://github.com/loglayer/loglayer/issues",
49
50
  "engines": {
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["logEntry: Record<string, any>","metadata: Record<string, any>"],"sources":["../src/LogflareTransport.ts"],"sourcesContent":["import type { HttpTransportConfig } from \"@loglayer/transport-http\";\nimport { HttpTransport } from \"@loglayer/transport-http\";\n\n/**\n * Configuration options for the Logflare transport.\n * This is essentially a wrapper around HttpTransport with Logflare specific defaults.\n */\nexport interface LogflareTransportConfig extends Omit<HttpTransportConfig, \"url\" | \"headers\" | \"payloadTemplate\"> {\n /**\n * Your Logflare source ID\n */\n sourceId: string;\n /**\n * Your Logflare API key\n */\n apiKey: string;\n /**\n * Custom Logflare API endpoint (for self-hosted instances)\n * @default \"https://api.logflare.app\"\n */\n url?: string;\n /**\n * Function to transform log data into the payload format (optional, defaults to Logflare format)\n */\n payloadTemplate?: (data: { logLevel: string; message: string; data?: Record<string, any> }) => string;\n}\n\n/**\n * LogflareTransport is responsible for sending logs to Logflare.\n * It extends HttpTransport with Logflare-specific configuration.\n *\n * Features:\n * - Automatic Logflare JSON format\n * - Retry logic with exponential backoff (via HttpTransport)\n * - Rate limiting support (via HttpTransport)\n * - Batch sending with configurable size and timeout (via HttpTransport)\n * - Error and debug callbacks\n * - Support for self-hosted Logflare instances\n */\nexport class LogflareTransport extends HttpTransport {\n constructor(config: LogflareTransportConfig) {\n const apiEndpoint = config.url ?? \"https://api.logflare.app\";\n const fullUrl = `${apiEndpoint}/logs/json?source=${config.sourceId}`;\n\n const payloadTemplate =\n config.payloadTemplate ??\n (({ logLevel, message, data }) => {\n const logEntry: Record<string, any> = {\n message,\n };\n\n // Always include level in metadata\n const metadata: Record<string, any> = {\n level: logLevel,\n };\n\n // Add additional metadata if data is provided\n if (data) {\n Object.assign(metadata, data);\n }\n\n logEntry.metadata = metadata;\n\n return JSON.stringify(logEntry);\n });\n\n // Create HTTP transport config, excluding Logflare-specific properties\n const httpConfig = { ...config };\n delete httpConfig.sourceId;\n delete httpConfig.apiKey;\n delete httpConfig.url;\n delete httpConfig.payloadTemplate;\n\n super({\n url: fullUrl,\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json; charset=utf-8\",\n \"X-API-KEY\": config.apiKey,\n },\n payloadTemplate,\n batchMode: \"field\", // Use Logflare's batch format\n batchFieldName: \"batch\", // Use Logflare's batch field name\n ...httpConfig,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AAuCA,IAAa,oBAAb,cAAuC,cAAc;CACnD,YAAY,QAAiC;EAE3C,MAAM,UAAU,GADI,OAAO,OAAO,2BACH,oBAAoB,OAAO;EAE1D,MAAM,kBACJ,OAAO,qBACL,EAAE,UAAU,SAAS,WAAW;GAChC,MAAMA,WAAgC,EACpC,SACD;GAGD,MAAMC,WAAgC,EACpC,OAAO,UACR;AAGD,OAAI,KACF,QAAO,OAAO,UAAU,KAAK;AAG/B,YAAS,WAAW;AAEpB,UAAO,KAAK,UAAU,SAAS;;EAInC,MAAM,aAAa,EAAE,GAAG,QAAQ;AAChC,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAClB,SAAO,WAAW;AAElB,QAAM;GACJ,KAAK;GACL,QAAQ;GACR,SAAS;IACP,gBAAgB;IAChB,aAAa,OAAO;IACrB;GACD;GACA,WAAW;GACX,gBAAgB;GAChB,GAAG;GACJ,CAAC"}