@builder6/server 0.12.0 → 0.12.1

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.
@@ -28,6 +28,7 @@ const services_1 = require("@builder6/services");
28
28
  const core_4 = require("@builder6/core");
29
29
  const project = require("../package.json");
30
30
  const schedule_1 = require("@nestjs/schedule");
31
+ const PinoParams_1 = require("./logger/PinoParams");
31
32
  let AppModule = AppModule_1 = class AppModule {
32
33
  constructor() {
33
34
  this.logger = new common_1.Logger(AppModule_1.name);
@@ -42,32 +43,7 @@ exports.AppModule = AppModule = AppModule_1 = __decorate([
42
43
  load: [core_4.getConfigs],
43
44
  isGlobal: true,
44
45
  }),
45
- nestjs_pino_1.LoggerModule.forRoot({
46
- pinoHttp: {
47
- level: (() => {
48
- const logLevel = {
49
- production: 'info',
50
- development: 'debug',
51
- test: 'error',
52
- };
53
- return logLevel[process.env.NODE_ENV] || 'info';
54
- })(),
55
- autoLogging: {
56
- ignore: (req) => req.url === '/api/v6/health',
57
- },
58
- transport: process.env.NODE_ENV !== 'production'
59
- ? {
60
- target: 'pino-pretty',
61
- options: {
62
- colorize: true,
63
- levelFirst: true,
64
- translateTime: 'UTC:mm/dd/yyyy, h:MM:ss TT Z',
65
- },
66
- }
67
- : undefined,
68
- redact: ['req.headers.authorization', 'req.headers.cookie'],
69
- },
70
- }),
46
+ nestjs_pino_1.LoggerModule.forRoot(PinoParams_1.pinoParams),
71
47
  moleculer_1.MoleculerModule.forRoot({
72
48
  namespace: 'steedos',
73
49
  transporter: process.env.B6_TRANSPORTER,
@@ -1 +1 @@
1
- {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAgD;AAChD,2CAA8C;AAC9C,6CAA2C;AAE3C,yCAA+C;AAC/C,6CAAgD;AAChD,yCAA4C;AAC5C,+CAAkD;AAClD,2CAA8C;AAC9C,2CAA8C;AAC9C,mDAAsD;AACtD,qDAAwD;AACxD,oDAAgD;AAChD,qDAAiD;AACjD,yCAA8C;AAC9C,2CAA8C;AAC9C,2CAA8C;AAC9C,iDAAoD;AACpD,yCAAgF;AAChF,2CAA2C;AAC3C,+CAAkD;AA4D3C,IAAM,SAAS,iBAAf,MAAM,SAAS;IAAf;QACY,WAAM,GAAG,IAAI,eAAM,CAAC,WAAS,CAAC,IAAI,CAAC,CAAC;IAGvD,CAAC;IADC,YAAY,KAAI,CAAC;CAClB,CAAA;AAJY,8BAAS;oBAAT,SAAS;IA1DrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,qBAAY,CAAC,OAAO,CAAC;gBACnB,IAAI,EAAE,CAAC,iBAAU,CAAC;gBAClB,QAAQ,EAAE,IAAI;aACf,CAAC;YACF,0BAAY,CAAC,OAAO,CAAC;gBACnB,QAAQ,EAAE;oBACR,KAAK,EAAE,CAAC,GAAG,EAAE;wBACX,MAAM,QAAQ,GAAG;4BACf,UAAU,EAAE,MAAM;4BAClB,WAAW,EAAE,OAAO;4BACpB,IAAI,EAAE,OAAO;yBACd,CAAC;wBACF,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC;oBAClD,CAAC,CAAC,EAAE;oBACJ,WAAW,EAAE;wBACX,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,gBAAgB;qBAC9C;oBACD,SAAS,EACP,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;wBACnC,CAAC,CAAC;4BACE,MAAM,EAAE,aAAa;4BACrB,OAAO,EAAE;gCACP,QAAQ,EAAE,IAAI;gCACd,UAAU,EAAE,IAAI;gCAChB,aAAa,EAAE,8BAA8B;6BAC9C;yBACF;wBACH,CAAC,CAAC,SAAS;oBACf,MAAM,EAAE,CAAC,2BAA2B,EAAE,oBAAoB,CAAC;iBAC5D;aACF,CAAC;YACF,2BAAe,CAAC,OAAO,CAAC;gBAEtB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;gBAEvC,GAAG,IAAA,0BAAmB,GAAE;gBACxB,GAAG,IAAA,oBAAa,GAAE;aACnB,CAAC;YACF,iBAAU;YACV,oBAAa;YACb,yBAAc,CAAC,OAAO,EAAE;YACxB,uBAAa;YACb,mBAAW;YACX,mBAAW;YACX,yBAAc;YACd,qBAAY;YACZ,mBAAW;YACX,mBAAW;YACX,6BAAgB;YAChB,wBAAU;YACV,mBAAY,CAAC,YAAY,EAAE;SAC5B;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,EAAE;KACd,CAAC;GACW,SAAS,CAIrB;AAED,MAAM,OAAO,GAAG,IAAA,iBAAU,GAAE,CAAC;AAC7B,OAAO,CAAC,GAAG,CACT,uFAAuF,CACxF,CAAC;AACF,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AACtC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AACxC,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;AAClD,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CACT,uFAAuF,CACxF,CAAC;AACF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"app.module.js","sourceRoot":"","sources":["../src/app.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAgD;AAChD,2CAA8C;AAC9C,6CAA2C;AAE3C,yCAA+C;AAC/C,6CAAgD;AAChD,yCAA4C;AAC5C,+CAAkD;AAClD,2CAA8C;AAC9C,2CAA8C;AAC9C,mDAAsD;AACtD,qDAAwD;AACxD,oDAAgD;AAChD,qDAAiD;AACjD,yCAA8C;AAC9C,2CAA8C;AAC9C,2CAA8C;AAC9C,iDAAoD;AACpD,yCAAgF;AAChF,2CAA2C;AAC3C,+CAAkD;AAElD,oDAAiD;AAkC1C,IAAM,SAAS,iBAAf,MAAM,SAAS;IAAf;QACY,WAAM,GAAG,IAAI,eAAM,CAAC,WAAS,CAAC,IAAI,CAAC,CAAC;IAGvD,CAAC;IADC,YAAY,KAAI,CAAC;CAClB,CAAA;AAJY,8BAAS;oBAAT,SAAS;IAhCrB,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,qBAAY,CAAC,OAAO,CAAC;gBACnB,IAAI,EAAE,CAAC,iBAAU,CAAC;gBAClB,QAAQ,EAAE,IAAI;aACf,CAAC;YACF,0BAAY,CAAC,OAAO,CAAC,uBAAU,CAAC;YAChC,2BAAe,CAAC,OAAO,CAAC;gBAEtB,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;gBAEvC,GAAG,IAAA,0BAAmB,GAAE;gBACxB,GAAG,IAAA,oBAAa,GAAE;aACnB,CAAC;YACF,iBAAU;YACV,oBAAa;YACb,yBAAc,CAAC,OAAO,EAAE;YACxB,uBAAa;YACb,mBAAW;YACX,mBAAW;YACX,yBAAc;YACd,qBAAY;YACZ,mBAAW;YACX,mBAAW;YACX,6BAAgB;YAChB,wBAAU;YACV,mBAAY,CAAC,YAAY,EAAE;SAC5B;QACD,WAAW,EAAE,CAAC,8BAAa,CAAC;QAC5B,SAAS,EAAE,EAAE;KACd,CAAC;GACW,SAAS,CAIrB;AAED,MAAM,OAAO,GAAG,IAAA,iBAAU,GAAE,CAAC;AAC7B,OAAO,CAAC,GAAG,CACT,uFAAuF,CACxF,CAAC;AACF,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AACtC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CAAC,eAAe,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AACxC,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;AAClD,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjB,OAAO,CAAC,GAAG,CACT,uFAAuF,CACxF,CAAC;AACF,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import * as build from 'pino-abstract-transport';
2
+ export default function (opts: any): Promise<import("stream").Transform & build.OnUnknown>;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = default_1;
4
+ const build = require("pino-abstract-transport");
5
+ const axios_1 = require("axios");
6
+ async function default_1(opts) {
7
+ return build(async (source) => {
8
+ let isPaused = false;
9
+ let logBatch = [];
10
+ const sendLogs = async () => {
11
+ if (logBatch.length === 0)
12
+ return;
13
+ const url = `${opts.endpointUrl}/v0/${opts.baseId}/${opts.tableName}`;
14
+ try {
15
+ await axios_1.default.post(url, { records: logBatch.map((logEntry) => ({ fields: logEntry })) }, {
16
+ headers: {
17
+ Authorization: `Bearer ${opts.apiKey}`,
18
+ 'Content-Type': 'application/json',
19
+ },
20
+ });
21
+ console.log(`Saved ${logBatch.length} log entries to Airtable`);
22
+ logBatch = [];
23
+ }
24
+ catch (error) {
25
+ console.error('Error saving log batch to Airtable:', error);
26
+ console.log('Pausing log processing for 5 minutes...');
27
+ isPaused = true;
28
+ }
29
+ };
30
+ setInterval(async () => {
31
+ if (!isPaused) {
32
+ await sendLogs();
33
+ }
34
+ }, 60 * 1000);
35
+ for await (const obj of source) {
36
+ if (isPaused) {
37
+ await new Promise((resolve) => setTimeout(resolve, 5 * 60 * 1000));
38
+ isPaused = false;
39
+ }
40
+ const logEntry = {
41
+ Message: obj.msg,
42
+ Level: obj.level,
43
+ Timestamp: new Date(obj.time).toISOString(),
44
+ };
45
+ logBatch.push(logEntry);
46
+ }
47
+ }, {
48
+ async close() {
49
+ },
50
+ });
51
+ }
52
+ //# sourceMappingURL=AirtableTransport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AirtableTransport.js","sourceRoot":"","sources":["../../src/logger/AirtableTransport.ts"],"names":[],"mappings":";;AAcA,4BA0DC;AAxED,iDAAiD;AACjD,iCAA0B;AAaX,KAAK,oBAAW,IAAI;IACjC,OAAO,KAAK,CACV,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,QAAQ,GAAG,EAAE,CAAC;QAElB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;YAC1B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAElC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,OAAO,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YAEtE,IAAI,CAAC;gBACH,MAAM,eAAK,CAAC,IAAI,CACd,GAAG,EACH,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAC/D;oBACE,OAAO,EAAE;wBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;wBACtC,cAAc,EAAE,kBAAkB;qBACnC;iBACF,CACF,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,SAAS,QAAQ,CAAC,MAAM,0BAA0B,CAAC,CAAC;gBAChE,QAAQ,GAAG,EAAE,CAAC;YAChB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;gBACvD,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC,CAAC;QAEF,WAAW,CAAC,KAAK,IAAI,EAAE;YACrB,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,QAAQ,EAAE,CAAC;YACnB,CAAC;QACH,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;QAEd,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YAC/B,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;gBACnE,QAAQ,GAAG,KAAK,CAAC;YACnB,CAAC;YAED,MAAM,QAAQ,GAAG;gBACf,OAAO,EAAE,GAAG,CAAC,GAAG;gBAChB,KAAK,EAAE,GAAG,CAAC,KAAK;gBAChB,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;aAC5C,CAAC;YAEF,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,EACD;QACE,KAAK,CAAC,KAAK;QAEX,CAAC;KACF,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import * as build from 'pino-abstract-transport';
2
+ export default function (opts: any): Promise<import("stream").Transform & build.OnUnknown>;
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = default_1;
4
+ const build = require("pino-abstract-transport");
5
+ const os = require("os");
6
+ const client_cloudwatch_logs_1 = require("@aws-sdk/client-cloudwatch-logs");
7
+ async function default_1(opts) {
8
+ const hostname = os.hostname();
9
+ const networkInterfaces = os.networkInterfaces();
10
+ const ipAddress = Object.values(networkInterfaces)
11
+ .flat()
12
+ .find((details) => details.family === 'IPv4' && !details.internal)?.address;
13
+ const client = new client_cloudwatch_logs_1.CloudWatchLogsClient({
14
+ region: opts.region,
15
+ credentials: {
16
+ accessKeyId: opts.accessKeyId,
17
+ secretAccessKey: opts.secretAccessKey,
18
+ },
19
+ });
20
+ const logGroupName = opts.logGroupName;
21
+ const logStreamNamePrefix = `${opts.logStreamName || 'b6'}-${hostname}.${ipAddress}`;
22
+ const retryWithBackoff = async (fn, retries = 5, delay = 1000) => {
23
+ try {
24
+ return await fn();
25
+ }
26
+ catch (error) {
27
+ if (retries > 0 && error.name === 'OperationAbortedException') {
28
+ await new Promise((resolve) => setTimeout(resolve, delay));
29
+ return retryWithBackoff(fn, retries - 1, delay * 2);
30
+ }
31
+ throw error;
32
+ }
33
+ };
34
+ const createLogGroup = async () => {
35
+ try {
36
+ const createLogGroupCommand = new client_cloudwatch_logs_1.CreateLogGroupCommand({
37
+ logGroupName,
38
+ });
39
+ await client.send(createLogGroupCommand);
40
+ }
41
+ catch (error) {
42
+ if (error.name !== 'ResourceAlreadyExistsException') {
43
+ throw error;
44
+ }
45
+ }
46
+ };
47
+ const createLogStream = async () => {
48
+ const date = new Date();
49
+ const formattedDate = date
50
+ .toISOString()
51
+ .slice(0, 16)
52
+ .replace(/[-T:]/g, '-');
53
+ const logStreamName = `${logStreamNamePrefix}-${formattedDate}`;
54
+ await retryWithBackoff(async () => {
55
+ const createLogStreamCommand = new client_cloudwatch_logs_1.CreateLogStreamCommand({
56
+ logGroupName,
57
+ logStreamName,
58
+ });
59
+ await client.send(createLogStreamCommand);
60
+ });
61
+ return logStreamName;
62
+ };
63
+ const getSequenceToken = async (logStreamName) => {
64
+ const describeLogStreamsCommand = new client_cloudwatch_logs_1.DescribeLogStreamsCommand({
65
+ logGroupName,
66
+ logStreamNamePrefix: logStreamName,
67
+ });
68
+ const response = await client.send(describeLogStreamsCommand);
69
+ return response.logStreams[0]?.uploadSequenceToken;
70
+ };
71
+ await createLogGroup();
72
+ return build(async (source) => {
73
+ let isPaused = false;
74
+ let logBatch = [];
75
+ const sendLogs = async () => {
76
+ if (logBatch.length === 0)
77
+ return;
78
+ const logStreamName = await createLogStream();
79
+ const sequenceToken = await getSequenceToken(logStreamName);
80
+ const putLogEventsCommand = new client_cloudwatch_logs_1.PutLogEventsCommand({
81
+ logGroupName,
82
+ logStreamName,
83
+ logEvents: logBatch,
84
+ sequenceToken,
85
+ });
86
+ try {
87
+ await retryWithBackoff(async () => {
88
+ await client.send(putLogEventsCommand);
89
+ });
90
+ console.log(`Saved ${logBatch.length} log entries to CloudWatch`);
91
+ logBatch = [];
92
+ }
93
+ catch (error) {
94
+ console.error('Error saving log batch to CloudWatch:', error);
95
+ console.log('Pausing log processing for 5 minutes...');
96
+ isPaused = true;
97
+ }
98
+ };
99
+ setInterval(async () => {
100
+ if (!isPaused) {
101
+ await sendLogs();
102
+ }
103
+ }, 60 * 1000);
104
+ for await (const obj of source) {
105
+ if (isPaused) {
106
+ await new Promise((resolve) => setTimeout(resolve, 5 * 60 * 1000));
107
+ isPaused = false;
108
+ }
109
+ const logEntry = {
110
+ message: obj.msg,
111
+ timestamp: new Date(obj.time).getTime(),
112
+ };
113
+ logBatch.push(logEntry);
114
+ }
115
+ }, {
116
+ async close() {
117
+ },
118
+ });
119
+ }
120
+ //# sourceMappingURL=CloudWatchTransport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CloudWatchTransport.js","sourceRoot":"","sources":["../../src/logger/CloudWatchTransport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Params } from 'nestjs-pino';
2
+ export declare const pinoParams: Params;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pinoParams = void 0;
4
+ const path = require("path");
5
+ const targets = [
6
+ process.env.NODE_ENV !== 'production'
7
+ ? {
8
+ target: 'pino-pretty',
9
+ options: {
10
+ colorize: true,
11
+ levelFirst: true,
12
+ translateTime: 'UTC:mm/dd/yyyy, h:MM:ss TT Z',
13
+ },
14
+ }
15
+ : {
16
+ target: 'pino/file',
17
+ options: { destination: 1 },
18
+ },
19
+ ];
20
+ if (process.env.B6_LOGS_CLOUD_TABLE_ID) {
21
+ targets.push({
22
+ target: path.join(__dirname, './AirtableTransport'),
23
+ options: {
24
+ endpointUrl: 'https://api.builder6.com',
25
+ apiKey: process.env.B6_CLOUD_API_KEY,
26
+ baseId: process.env.B6_CLOUD_BASE_ID,
27
+ tableName: process.env.B6_LOGS_CLOUD_TABLE_ID,
28
+ },
29
+ });
30
+ }
31
+ if (process.env.B6_LOGS_AWS_LOG_GROUP_NAME) {
32
+ targets.push({
33
+ target: path.join(__dirname, './CloudWatchTransport'),
34
+ options: {
35
+ logGroupName: process.env.B6_LOGS_AWS_LOG_GROUP_NAME,
36
+ logStreamName: process.env.B6_LOGS_AWS_LOG_STREAM_NAME,
37
+ region: process.env.B6_LOGS_AWS_REGION,
38
+ accessKeyId: process.env.B6_LOGS_AWS_ACCESS_KEY_ID,
39
+ secretAccessKey: process.env.B6_LOGS_AWS_SECRET_ACCESS_KEY,
40
+ },
41
+ });
42
+ }
43
+ exports.pinoParams = {
44
+ pinoHttp: {
45
+ level: (() => {
46
+ const logLevel = {
47
+ production: 'info',
48
+ development: 'debug',
49
+ test: 'error',
50
+ };
51
+ return logLevel[process.env.NODE_ENV] || 'info';
52
+ })(),
53
+ autoLogging: {
54
+ ignore: (req) => req.url === '/api/v6/health',
55
+ },
56
+ transport: {
57
+ targets,
58
+ },
59
+ redact: ['req.headers.authorization', 'req.headers.cookie'],
60
+ },
61
+ };
62
+ //# sourceMappingURL=PinoParams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PinoParams.js","sourceRoot":"","sources":["../../src/logger/PinoParams.ts"],"names":[],"mappings":";;;AACA,6BAA6B;AAE7B,MAAM,OAAO,GAAG;IACd,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;QACnC,CAAC,CAAC;YACE,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,8BAA8B;aAC9C;SACF;QACH,CAAC,CAAC;YACE,MAAM,EAAE,WAAW;YACnB,OAAO,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE;SAC5B;CACN,CAAC;AAEF,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC;IACvC,OAAO,CAAC,IAAI,CAAC;QACX,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,qBAAqB,CAAC;QACnD,OAAO,EAAE;YACP,WAAW,EAAE,0BAA0B;YACvC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;YACpC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;YACpC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB;SAC9C;KACK,CAAC,CAAC;AACZ,CAAC;AAED,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC;IAC3C,OAAO,CAAC,IAAI,CAAC;QACX,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,uBAAuB,CAAC;QACrD,OAAO,EAAE;YACP,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B;YACpD,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC,2BAA2B;YACtD,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;YACtC,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB;YAClD,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,6BAA6B;SAC3D;KACK,CAAC,CAAC;AACZ,CAAC;AAEY,QAAA,UAAU,GAAW;IAChC,QAAQ,EAAE;QACR,KAAK,EAAE,CAAC,GAAG,EAAE;YACX,MAAM,QAAQ,GAAG;gBACf,UAAU,EAAE,MAAM;gBAClB,WAAW,EAAE,OAAO;gBACpB,IAAI,EAAE,OAAO;aACd,CAAC;YACF,OAAO,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC;QAClD,CAAC,CAAC,EAAE;QACJ,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,gBAAgB;SAC9C;QACD,SAAS,EAAE;YACT,OAAO;SACR;QACD,MAAM,EAAE,CAAC,2BAA2B,EAAE,oBAAoB,CAAC;KAC5D;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder6/server",
3
- "version": "0.12.0",
3
+ "version": "0.12.1",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "license": "AGPL-3.0-only",
@@ -26,18 +26,19 @@
26
26
  "test:e2e": "jest --config ./test/jest-e2e.json"
27
27
  },
28
28
  "dependencies": {
29
- "@builder6/cli": "^0.12.0",
30
- "@builder6/core": "^0.12.0",
31
- "@builder6/email": "^0.12.0",
32
- "@builder6/files": "^0.12.0",
33
- "@builder6/moleculer": "^0.12.0",
34
- "@builder6/pages": "^0.12.0",
35
- "@builder6/query-mongodb": "^0.12.0",
36
- "@builder6/rooms": "^0.12.0",
37
- "@builder6/services": "^0.12.0",
38
- "@builder6/sharepoint": "^0.12.0",
39
- "@builder6/steedos": "^0.12.0",
40
- "@builder6/tables": "^0.12.0",
29
+ "@aws-sdk/client-cloudwatch-logs": "^3.721.0",
30
+ "@builder6/cli": "^0.12.1",
31
+ "@builder6/core": "^0.12.1",
32
+ "@builder6/email": "^0.12.1",
33
+ "@builder6/files": "^0.12.1",
34
+ "@builder6/moleculer": "^0.12.1",
35
+ "@builder6/pages": "^0.12.1",
36
+ "@builder6/query-mongodb": "^0.12.1",
37
+ "@builder6/rooms": "^0.12.1",
38
+ "@builder6/services": "^0.12.1",
39
+ "@builder6/sharepoint": "^0.12.1",
40
+ "@builder6/steedos": "^0.12.1",
41
+ "@builder6/tables": "^0.12.1",
41
42
  "@nestjs/common": "^10.0.0",
42
43
  "@nestjs/config": "^3.3.0",
43
44
  "@nestjs/core": "^9.0.0",
@@ -125,5 +126,5 @@
125
126
  "publishConfig": {
126
127
  "access": "public"
127
128
  },
128
- "gitHead": "36d1112d78ee668de5dc61c6b2cb7eceff6d123d"
129
+ "gitHead": "04c332c3bd98f8df718399b56abbfa7f866904e6"
129
130
  }