flowlint 0.3.2 → 0.3.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/dist/packages/config/flowlint-config.d.ts +64 -0
- package/dist/packages/config/flowlint-config.js +103 -0
- package/dist/packages/config/flowlint-config.js.map +1 -0
- package/dist/packages/config/index.d.ts +4 -0
- package/dist/packages/config/index.js +21 -0
- package/dist/packages/config/index.js.map +1 -0
- package/dist/packages/github/client.d.ts +2 -0
- package/dist/packages/github/client.js +94 -0
- package/dist/packages/github/client.js.map +1 -0
- package/dist/packages/logger/index.d.ts +11 -0
- package/dist/packages/logger/index.js +40 -0
- package/dist/packages/logger/index.js.map +1 -0
- package/dist/packages/observability/collectors.d.ts +40 -0
- package/dist/packages/observability/collectors.js +75 -0
- package/dist/packages/observability/collectors.js.map +1 -0
- package/dist/packages/observability/index.d.ts +10 -0
- package/dist/packages/observability/index.js +35 -0
- package/dist/packages/observability/index.js.map +1 -0
- package/dist/packages/observability/metrics.d.ts +119 -0
- package/dist/packages/observability/metrics.js +194 -0
- package/dist/packages/observability/metrics.js.map +1 -0
- package/dist/packages/observability/middleware.d.ts +32 -0
- package/dist/packages/observability/middleware.js +58 -0
- package/dist/packages/observability/middleware.js.map +1 -0
- package/dist/packages/review/analysis-engine.d.ts +19 -0
- package/dist/packages/review/analysis-engine.js +111 -0
- package/dist/packages/review/analysis-engine.js.map +1 -0
- package/dist/packages/review/index.d.ts +12 -0
- package/dist/packages/review/index.js +29 -0
- package/dist/packages/review/index.js.map +1 -0
- package/dist/packages/review/parser-n8n.d.ts +2 -0
- package/dist/packages/review/parser-n8n.js +118 -0
- package/dist/packages/review/parser-n8n.js.map +1 -0
- package/dist/packages/review/providers/github.d.ts +62 -0
- package/dist/packages/review/providers/github.js +275 -0
- package/dist/packages/review/providers/github.js.map +1 -0
- package/dist/packages/review/providers.d.ts +106 -0
- package/dist/packages/review/providers.js +12 -0
- package/dist/packages/review/providers.js.map +1 -0
- package/dist/packages/review/reporter.d.ts +17 -0
- package/dist/packages/review/reporter.js +62 -0
- package/dist/packages/review/reporter.js.map +1 -0
- package/dist/packages/review/rules/index.d.ts +9 -0
- package/dist/packages/review/rules/index.js +313 -0
- package/dist/packages/review/rules/index.js.map +1 -0
- package/dist/packages/review/rules/rule-utils.d.ts +36 -0
- package/dist/packages/review/rules/rule-utils.js +75 -0
- package/dist/packages/review/rules/rule-utils.js.map +1 -0
- package/dist/packages/review/schemas/index.d.ts +17 -0
- package/dist/packages/review/schemas/index.js +139 -0
- package/dist/packages/review/schemas/index.js.map +1 -0
- package/dist/packages/review/schemas/n8n-workflow.schema.json +177 -0
- package/dist/packages/review/sniffer.d.ts +15 -0
- package/dist/packages/review/sniffer.js +47 -0
- package/dist/packages/review/sniffer.js.map +1 -0
- package/dist/packages/review/types.d.ts +38 -0
- package/dist/packages/review/types.js +3 -0
- package/dist/packages/review/types.js.map +1 -0
- package/dist/packages/review/utils/findings.d.ts +23 -0
- package/dist/packages/review/utils/findings.js +34 -0
- package/dist/packages/review/utils/findings.js.map +1 -0
- package/dist/packages/review/utils/merge.d.ts +12 -0
- package/dist/packages/review/utils/merge.js +40 -0
- package/dist/packages/review/utils/merge.js.map +1 -0
- package/dist/packages/review/utils.d.ts +60 -0
- package/dist/packages/review/utils.js +214 -0
- package/dist/packages/review/utils.js.map +1 -0
- package/dist/packages/tracing/github-tracer.d.ts +38 -0
- package/dist/packages/tracing/github-tracer.js +79 -0
- package/dist/packages/tracing/github-tracer.js.map +1 -0
- package/dist/packages/tracing/index.d.ts +81 -0
- package/dist/packages/tracing/index.js +240 -0
- package/dist/packages/tracing/index.js.map +1 -0
- package/dist/packages/tracing/tracer.d.ts +30 -0
- package/dist/packages/tracing/tracer.js +141 -0
- package/dist/packages/tracing/tracer.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../packages/tracing/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Span } from '@opentelemetry/api';
|
|
2
|
+
import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node';
|
|
3
|
+
type AutoInstrumentationOptions = Parameters<typeof getNodeAutoInstrumentations>[0];
|
|
4
|
+
/**
|
|
5
|
+
* Initialize OpenTelemetry tracing for FlowLint
|
|
6
|
+
*/
|
|
7
|
+
export declare function initTracing(options: {
|
|
8
|
+
serviceName: string;
|
|
9
|
+
serviceNamespace?: string;
|
|
10
|
+
serviceVersion?: string;
|
|
11
|
+
environment?: string;
|
|
12
|
+
exporter?: 'otlp-http' | 'otlp-grpc' | 'console' | 'none';
|
|
13
|
+
otlpEndpoint?: string;
|
|
14
|
+
otlpHeaders?: Record<string, string>;
|
|
15
|
+
otlpTimeoutMs?: number;
|
|
16
|
+
instrumentationOptions?: AutoInstrumentationOptions;
|
|
17
|
+
}): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Shutdown OpenTelemetry
|
|
20
|
+
*/
|
|
21
|
+
export declare function shutdownTracing(): Promise<void>;
|
|
22
|
+
/**
|
|
23
|
+
* Get tracer instance
|
|
24
|
+
*/
|
|
25
|
+
export declare function getTracer(): import("@opentelemetry/api").Tracer;
|
|
26
|
+
/**
|
|
27
|
+
* Set custom span attributes (helper)
|
|
28
|
+
*/
|
|
29
|
+
export declare function setSpanAttributes(span: Span | undefined, attributes: Record<string, string | number | boolean>): void;
|
|
30
|
+
export {};
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initTracing = initTracing;
|
|
4
|
+
exports.shutdownTracing = shutdownTracing;
|
|
5
|
+
exports.getTracer = getTracer;
|
|
6
|
+
exports.setSpanAttributes = setSpanAttributes;
|
|
7
|
+
const api_1 = require("@opentelemetry/api");
|
|
8
|
+
const sdk_node_1 = require("@opentelemetry/sdk-node");
|
|
9
|
+
const resources_1 = require("@opentelemetry/resources");
|
|
10
|
+
const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
|
|
11
|
+
const exporter_trace_otlp_http_1 = require("@opentelemetry/exporter-trace-otlp-http");
|
|
12
|
+
const exporter_trace_otlp_grpc_1 = require("@opentelemetry/exporter-trace-otlp-grpc");
|
|
13
|
+
const instrumentation_http_1 = require("@opentelemetry/instrumentation-http");
|
|
14
|
+
const instrumentation_express_1 = require("@opentelemetry/instrumentation-express");
|
|
15
|
+
const auto_instrumentations_node_1 = require("@opentelemetry/auto-instrumentations-node");
|
|
16
|
+
const logger_1 = require("../logger");
|
|
17
|
+
let sdk;
|
|
18
|
+
let initPromise;
|
|
19
|
+
const DEFAULT_SERVICE_VERSION = process.env.npm_package_version || '0.0.0';
|
|
20
|
+
const DEFAULT_ENVIRONMENT = process.env.NODE_ENV || 'development';
|
|
21
|
+
/**
|
|
22
|
+
* Initialize OpenTelemetry tracing for FlowLint
|
|
23
|
+
*/
|
|
24
|
+
function initTracing(options) {
|
|
25
|
+
if (initPromise) {
|
|
26
|
+
return initPromise;
|
|
27
|
+
}
|
|
28
|
+
api_1.diag.setLogger(new api_1.DiagConsoleLogger(), api_1.DiagLogLevel.ERROR);
|
|
29
|
+
const { serviceName, serviceNamespace, serviceVersion = DEFAULT_SERVICE_VERSION, environment = DEFAULT_ENVIRONMENT, exporter = process.env.OTEL_EXPORTER || 'otlp-http', otlpEndpoint = process.env.OTEL_EXPORTER_OTLP_ENDPOINT, otlpHeaders = parseHeaders(process.env.OTEL_EXPORTER_OTLP_HEADERS), otlpTimeoutMs = process.env.OTEL_EXPORTER_OTLP_TIMEOUT ? Number(process.env.OTEL_EXPORTER_OTLP_TIMEOUT) : undefined, instrumentationOptions = {}, } = options;
|
|
30
|
+
const resource = (0, resources_1.resourceFromAttributes)({
|
|
31
|
+
[semantic_conventions_1.ATTR_SERVICE_NAME]: serviceName,
|
|
32
|
+
[semantic_conventions_1.ATTR_SERVICE_VERSION]: serviceVersion,
|
|
33
|
+
'service.namespace': serviceNamespace || 'flowlint',
|
|
34
|
+
'deployment.environment': environment,
|
|
35
|
+
});
|
|
36
|
+
const instrumentations = [
|
|
37
|
+
new instrumentation_http_1.HttpInstrumentation({
|
|
38
|
+
ignoreIncomingRequestHook: (req) => {
|
|
39
|
+
const path = req.url || '';
|
|
40
|
+
return ['/metrics', '/livez', '/readyz', '/healthz', '/openapi.json', '/api-docs'].some((ignorePath) => path.startsWith(ignorePath));
|
|
41
|
+
},
|
|
42
|
+
}),
|
|
43
|
+
new instrumentation_express_1.ExpressInstrumentation(),
|
|
44
|
+
];
|
|
45
|
+
const autoInstrumentations = (0, auto_instrumentations_node_1.getNodeAutoInstrumentations)({
|
|
46
|
+
'@opentelemetry/instrumentation-fs': { enabled: false },
|
|
47
|
+
...instrumentationOptions,
|
|
48
|
+
});
|
|
49
|
+
const exporters = createExporter({ exporter, otlpEndpoint, otlpHeaders, otlpTimeoutMs });
|
|
50
|
+
sdk = new sdk_node_1.NodeSDK({
|
|
51
|
+
resource,
|
|
52
|
+
traceExporter: exporters.traceExporter,
|
|
53
|
+
instrumentations: [...instrumentations, ...Object.values(autoInstrumentations)],
|
|
54
|
+
});
|
|
55
|
+
initPromise = (async () => {
|
|
56
|
+
await sdk.start();
|
|
57
|
+
logger_1.logger.info({ serviceName }, 'OpenTelemetry tracing initialized');
|
|
58
|
+
})().catch((error) => {
|
|
59
|
+
logger_1.logger.error({ error }, 'failed to initialize OpenTelemetry tracing');
|
|
60
|
+
});
|
|
61
|
+
return initPromise;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Shutdown OpenTelemetry
|
|
65
|
+
*/
|
|
66
|
+
async function shutdownTracing() {
|
|
67
|
+
if (!sdk) {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
try {
|
|
71
|
+
await sdk.shutdown();
|
|
72
|
+
logger_1.logger.info('OpenTelemetry tracing shut down');
|
|
73
|
+
}
|
|
74
|
+
catch (error) {
|
|
75
|
+
logger_1.logger.error({ error }, 'failed to shut down OpenTelemetry');
|
|
76
|
+
}
|
|
77
|
+
finally {
|
|
78
|
+
sdk = undefined;
|
|
79
|
+
initPromise = undefined;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get tracer instance
|
|
84
|
+
*/
|
|
85
|
+
function getTracer() {
|
|
86
|
+
return api_1.trace.getTracer('flowlint');
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Set custom span attributes (helper)
|
|
90
|
+
*/
|
|
91
|
+
function setSpanAttributes(span, attributes) {
|
|
92
|
+
if (!span) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
span.setAttributes(attributes);
|
|
96
|
+
}
|
|
97
|
+
function parseHeaders(headersInput) {
|
|
98
|
+
if (!headersInput) {
|
|
99
|
+
return {};
|
|
100
|
+
}
|
|
101
|
+
try {
|
|
102
|
+
const entries = headersInput.split(',').map((entry) => {
|
|
103
|
+
const [key, value] = entry.split('=').map((item) => item.trim());
|
|
104
|
+
return [key, value];
|
|
105
|
+
});
|
|
106
|
+
return Object.fromEntries(entries);
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
logger_1.logger.warn({ error }, 'failed to parse OTLP headers');
|
|
110
|
+
return {};
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
function createExporter(options) {
|
|
114
|
+
const { exporter, otlpEndpoint, otlpHeaders, otlpTimeoutMs } = options;
|
|
115
|
+
switch (exporter) {
|
|
116
|
+
case 'otlp-http':
|
|
117
|
+
return {
|
|
118
|
+
traceExporter: new exporter_trace_otlp_http_1.OTLPTraceExporter({
|
|
119
|
+
url: otlpEndpoint,
|
|
120
|
+
headers: otlpHeaders,
|
|
121
|
+
timeoutMillis: otlpTimeoutMs,
|
|
122
|
+
}),
|
|
123
|
+
};
|
|
124
|
+
case 'otlp-grpc':
|
|
125
|
+
return {
|
|
126
|
+
traceExporter: new exporter_trace_otlp_grpc_1.OTLPTraceExporter({
|
|
127
|
+
url: otlpEndpoint,
|
|
128
|
+
}),
|
|
129
|
+
};
|
|
130
|
+
case 'console':
|
|
131
|
+
return {
|
|
132
|
+
traceExporter: undefined,
|
|
133
|
+
};
|
|
134
|
+
case 'none':
|
|
135
|
+
default:
|
|
136
|
+
return {
|
|
137
|
+
traceExporter: undefined,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
//# sourceMappingURL=tracer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../../packages/tracing/tracer.ts"],"names":[],"mappings":"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"}
|