@blokjs/runner 0.2.0
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/Blok.d.ts +19 -0
- package/dist/Blok.js +184 -0
- package/dist/Blok.js.map +1 -0
- package/dist/BlokResponse.d.ts +16 -0
- package/dist/BlokResponse.js +28 -0
- package/dist/BlokResponse.js.map +1 -0
- package/dist/Configuration.d.ts +37 -0
- package/dist/Configuration.js +248 -0
- package/dist/Configuration.js.map +1 -0
- package/dist/ConfigurationResolver.d.ts +7 -0
- package/dist/ConfigurationResolver.js +15 -0
- package/dist/ConfigurationResolver.js.map +1 -0
- package/dist/DefaultLogger.d.ts +65 -0
- package/dist/DefaultLogger.js +101 -0
- package/dist/DefaultLogger.js.map +1 -0
- package/dist/LocalStorage.d.ts +7 -0
- package/dist/LocalStorage.js +56 -0
- package/dist/LocalStorage.js.map +1 -0
- package/dist/MemoryUsage.d.ts +22 -0
- package/dist/MemoryUsage.js +83 -0
- package/dist/MemoryUsage.js.map +1 -0
- package/dist/NodeMap.d.ts +7 -0
- package/dist/NodeMap.js +13 -0
- package/dist/NodeMap.js.map +1 -0
- package/dist/ResolverBase.d.ts +8 -0
- package/dist/ResolverBase.js +18 -0
- package/dist/ResolverBase.js.map +1 -0
- package/dist/Runner.d.ts +25 -0
- package/dist/Runner.js +32 -0
- package/dist/Runner.js.map +1 -0
- package/dist/RunnerNode.d.ts +9 -0
- package/dist/RunnerNode.js +8 -0
- package/dist/RunnerNode.js.map +1 -0
- package/dist/RunnerNodeBase.d.ts +4 -0
- package/dist/RunnerNodeBase.js +3 -0
- package/dist/RunnerNodeBase.js.map +1 -0
- package/dist/RunnerSteps.d.ts +14 -0
- package/dist/RunnerSteps.js +110 -0
- package/dist/RunnerSteps.js.map +1 -0
- package/dist/RuntimeAdapterNode.d.ts +19 -0
- package/dist/RuntimeAdapterNode.js +87 -0
- package/dist/RuntimeAdapterNode.js.map +1 -0
- package/dist/RuntimeRegistry.d.ts +61 -0
- package/dist/RuntimeRegistry.js +87 -0
- package/dist/RuntimeRegistry.js.map +1 -0
- package/dist/TriggerBase.d.ts +119 -0
- package/dist/TriggerBase.js +413 -0
- package/dist/TriggerBase.js.map +1 -0
- package/dist/adapters/BunRuntimeAdapter.d.ts +38 -0
- package/dist/adapters/BunRuntimeAdapter.js +169 -0
- package/dist/adapters/BunRuntimeAdapter.js.map +1 -0
- package/dist/adapters/DockerRuntimeAdapter.d.ts +85 -0
- package/dist/adapters/DockerRuntimeAdapter.js +298 -0
- package/dist/adapters/DockerRuntimeAdapter.js.map +1 -0
- package/dist/adapters/HttpRuntimeAdapter.d.ts +58 -0
- package/dist/adapters/HttpRuntimeAdapter.js +152 -0
- package/dist/adapters/HttpRuntimeAdapter.js.map +1 -0
- package/dist/adapters/NodeJsRuntimeAdapter.d.ts +23 -0
- package/dist/adapters/NodeJsRuntimeAdapter.js +67 -0
- package/dist/adapters/NodeJsRuntimeAdapter.js.map +1 -0
- package/dist/adapters/RuntimeAdapter.d.ts +42 -0
- package/dist/adapters/RuntimeAdapter.js +2 -0
- package/dist/adapters/RuntimeAdapter.js.map +1 -0
- package/dist/adapters/WasmRuntimeAdapter.d.ts +69 -0
- package/dist/adapters/WasmRuntimeAdapter.js +279 -0
- package/dist/adapters/WasmRuntimeAdapter.js.map +1 -0
- package/dist/cache/NodeResultCache.d.ts +286 -0
- package/dist/cache/NodeResultCache.js +499 -0
- package/dist/cache/NodeResultCache.js.map +1 -0
- package/dist/cache/index.d.ts +1 -0
- package/dist/cache/index.js +2 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cost/CostEstimator.d.ts +57 -0
- package/dist/cost/CostEstimator.js +171 -0
- package/dist/cost/CostEstimator.js.map +1 -0
- package/dist/cost/index.d.ts +4 -0
- package/dist/cost/index.js +3 -0
- package/dist/cost/index.js.map +1 -0
- package/dist/cost/pricing.d.ts +24 -0
- package/dist/cost/pricing.js +169 -0
- package/dist/cost/pricing.js.map +1 -0
- package/dist/defineNode.d.ts +155 -0
- package/dist/defineNode.js +191 -0
- package/dist/defineNode.js.map +1 -0
- package/dist/graphql/GraphQLSchemaGenerator.d.ts +129 -0
- package/dist/graphql/GraphQLSchemaGenerator.js +425 -0
- package/dist/graphql/GraphQLSchemaGenerator.js.map +1 -0
- package/dist/hmr/FileWatcher.d.ts +62 -0
- package/dist/hmr/FileWatcher.js +185 -0
- package/dist/hmr/FileWatcher.js.map +1 -0
- package/dist/hmr/HmrDevConsole.d.ts +13 -0
- package/dist/hmr/HmrDevConsole.js +46 -0
- package/dist/hmr/HmrDevConsole.js.map +1 -0
- package/dist/hmr/HotReloadManager.d.ts +84 -0
- package/dist/hmr/HotReloadManager.js +195 -0
- package/dist/hmr/HotReloadManager.js.map +1 -0
- package/dist/hmr/index.d.ts +39 -0
- package/dist/hmr/index.js +38 -0
- package/dist/hmr/index.js.map +1 -0
- package/dist/index.d.ts +107 -0
- package/dist/index.js +107 -0
- package/dist/index.js.map +1 -0
- package/dist/integrations/APMIntegration.d.ts +141 -0
- package/dist/integrations/APMIntegration.js +212 -0
- package/dist/integrations/APMIntegration.js.map +1 -0
- package/dist/integrations/AzureMonitorIntegration.d.ts +118 -0
- package/dist/integrations/AzureMonitorIntegration.js +254 -0
- package/dist/integrations/AzureMonitorIntegration.js.map +1 -0
- package/dist/integrations/CloudWatchIntegration.d.ts +135 -0
- package/dist/integrations/CloudWatchIntegration.js +293 -0
- package/dist/integrations/CloudWatchIntegration.js.map +1 -0
- package/dist/integrations/SentryIntegration.d.ts +153 -0
- package/dist/integrations/SentryIntegration.js +200 -0
- package/dist/integrations/SentryIntegration.js.map +1 -0
- package/dist/integrations/index.d.ts +19 -0
- package/dist/integrations/index.js +16 -0
- package/dist/integrations/index.js.map +1 -0
- package/dist/marketplace/RuntimeAutoScaler.d.ts +148 -0
- package/dist/marketplace/RuntimeAutoScaler.js +366 -0
- package/dist/marketplace/RuntimeAutoScaler.js.map +1 -0
- package/dist/marketplace/RuntimeCatalog.d.ts +174 -0
- package/dist/marketplace/RuntimeCatalog.js +339 -0
- package/dist/marketplace/RuntimeCatalog.js.map +1 -0
- package/dist/marketplace/RuntimeDiscovery.d.ts +86 -0
- package/dist/marketplace/RuntimeDiscovery.js +219 -0
- package/dist/marketplace/RuntimeDiscovery.js.map +1 -0
- package/dist/marketplace/RuntimeHealthMonitor.d.ts +100 -0
- package/dist/marketplace/RuntimeHealthMonitor.js +241 -0
- package/dist/marketplace/RuntimeHealthMonitor.js.map +1 -0
- package/dist/marketplace/RuntimeMetricsDashboard.d.ts +113 -0
- package/dist/marketplace/RuntimeMetricsDashboard.js +293 -0
- package/dist/marketplace/RuntimeMetricsDashboard.js.map +1 -0
- package/dist/monitoring/CircuitBreaker.d.ts +107 -0
- package/dist/monitoring/CircuitBreaker.js +238 -0
- package/dist/monitoring/CircuitBreaker.js.map +1 -0
- package/dist/monitoring/DistributedTracer.d.ts +125 -0
- package/dist/monitoring/DistributedTracer.js +230 -0
- package/dist/monitoring/DistributedTracer.js.map +1 -0
- package/dist/monitoring/HealthCheck.d.ts +54 -0
- package/dist/monitoring/HealthCheck.js +102 -0
- package/dist/monitoring/HealthCheck.js.map +1 -0
- package/dist/monitoring/PerformanceProfiler.d.ts +63 -0
- package/dist/monitoring/PerformanceProfiler.js +229 -0
- package/dist/monitoring/PerformanceProfiler.js.map +1 -0
- package/dist/monitoring/PrometheusBootstrap.d.ts +30 -0
- package/dist/monitoring/PrometheusBootstrap.js +71 -0
- package/dist/monitoring/PrometheusBootstrap.js.map +1 -0
- package/dist/monitoring/PrometheusMetricsBridge.d.ts +60 -0
- package/dist/monitoring/PrometheusMetricsBridge.js +216 -0
- package/dist/monitoring/PrometheusMetricsBridge.js.map +1 -0
- package/dist/monitoring/RateLimiter.d.ts +58 -0
- package/dist/monitoring/RateLimiter.js +128 -0
- package/dist/monitoring/RateLimiter.js.map +1 -0
- package/dist/monitoring/StructuredLogger.d.ts +131 -0
- package/dist/monitoring/StructuredLogger.js +207 -0
- package/dist/monitoring/StructuredLogger.js.map +1 -0
- package/dist/monitoring/TracingBootstrap.d.ts +69 -0
- package/dist/monitoring/TracingBootstrap.js +129 -0
- package/dist/monitoring/TracingBootstrap.js.map +1 -0
- package/dist/monitoring/TriggerMetricsCollector.d.ts +94 -0
- package/dist/monitoring/TriggerMetricsCollector.js +174 -0
- package/dist/monitoring/TriggerMetricsCollector.js.map +1 -0
- package/dist/monitoring/index.d.ts +9 -0
- package/dist/monitoring/index.js +10 -0
- package/dist/monitoring/index.js.map +1 -0
- package/dist/openapi/OpenAPIGenerator.d.ts +192 -0
- package/dist/openapi/OpenAPIGenerator.js +373 -0
- package/dist/openapi/OpenAPIGenerator.js.map +1 -0
- package/dist/openapi/index.d.ts +20 -0
- package/dist/openapi/index.js +20 -0
- package/dist/openapi/index.js.map +1 -0
- package/dist/security/ABAC.d.ts +224 -0
- package/dist/security/ABAC.js +380 -0
- package/dist/security/ABAC.js.map +1 -0
- package/dist/security/AuditLogger.d.ts +242 -0
- package/dist/security/AuditLogger.js +317 -0
- package/dist/security/AuditLogger.js.map +1 -0
- package/dist/security/AuthMiddleware.d.ts +163 -0
- package/dist/security/AuthMiddleware.js +274 -0
- package/dist/security/AuthMiddleware.js.map +1 -0
- package/dist/security/EncryptionAtRest.d.ts +206 -0
- package/dist/security/EncryptionAtRest.js +236 -0
- package/dist/security/EncryptionAtRest.js.map +1 -0
- package/dist/security/OAuthProvider.d.ts +334 -0
- package/dist/security/OAuthProvider.js +719 -0
- package/dist/security/OAuthProvider.js.map +1 -0
- package/dist/security/PIIDetector.d.ts +233 -0
- package/dist/security/PIIDetector.js +354 -0
- package/dist/security/PIIDetector.js.map +1 -0
- package/dist/security/RBAC.d.ts +143 -0
- package/dist/security/RBAC.js +285 -0
- package/dist/security/RBAC.js.map +1 -0
- package/dist/security/SecretManager.d.ts +652 -0
- package/dist/security/SecretManager.js +1146 -0
- package/dist/security/SecretManager.js.map +1 -0
- package/dist/security/TLSConfig.d.ts +305 -0
- package/dist/security/TLSConfig.js +550 -0
- package/dist/security/TLSConfig.js.map +1 -0
- package/dist/security/index.d.ts +79 -0
- package/dist/security/index.js +80 -0
- package/dist/security/index.js.map +1 -0
- package/dist/testing/TestHarness.d.ts +189 -0
- package/dist/testing/TestHarness.js +272 -0
- package/dist/testing/TestHarness.js.map +1 -0
- package/dist/testing/TestLogger.d.ts +103 -0
- package/dist/testing/TestLogger.js +153 -0
- package/dist/testing/TestLogger.js.map +1 -0
- package/dist/testing/WorkflowTestRunner.d.ts +172 -0
- package/dist/testing/WorkflowTestRunner.js +355 -0
- package/dist/testing/WorkflowTestRunner.js.map +1 -0
- package/dist/testing/index.d.ts +21 -0
- package/dist/testing/index.js +22 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/tracing/InMemoryRunStore.d.ts +44 -0
- package/dist/tracing/InMemoryRunStore.js +341 -0
- package/dist/tracing/InMemoryRunStore.js.map +1 -0
- package/dist/tracing/PostgresRunStore.d.ts +82 -0
- package/dist/tracing/PostgresRunStore.js +640 -0
- package/dist/tracing/PostgresRunStore.js.map +1 -0
- package/dist/tracing/RunStore.d.ts +38 -0
- package/dist/tracing/RunStore.js +2 -0
- package/dist/tracing/RunStore.js.map +1 -0
- package/dist/tracing/RunTracker.d.ts +75 -0
- package/dist/tracing/RunTracker.js +374 -0
- package/dist/tracing/RunTracker.js.map +1 -0
- package/dist/tracing/SqliteRunStore.d.ts +53 -0
- package/dist/tracing/SqliteRunStore.js +703 -0
- package/dist/tracing/SqliteRunStore.js.map +1 -0
- package/dist/tracing/TraceRouter.d.ts +47 -0
- package/dist/tracing/TraceRouter.js +904 -0
- package/dist/tracing/TraceRouter.js.map +1 -0
- package/dist/tracing/TracingLogger.d.ts +21 -0
- package/dist/tracing/TracingLogger.js +62 -0
- package/dist/tracing/TracingLogger.js.map +1 -0
- package/dist/tracing/createStore.d.ts +30 -0
- package/dist/tracing/createStore.js +75 -0
- package/dist/tracing/createStore.js.map +1 -0
- package/dist/tracing/index.d.ts +13 -0
- package/dist/tracing/index.js +9 -0
- package/dist/tracing/index.js.map +1 -0
- package/dist/tracing/sanitize.d.ts +7 -0
- package/dist/tracing/sanitize.js +95 -0
- package/dist/tracing/sanitize.js.map +1 -0
- package/dist/tracing/types.d.ts +178 -0
- package/dist/tracing/types.js +3 -0
- package/dist/tracing/types.js.map +1 -0
- package/dist/types/Average.d.ts +11 -0
- package/dist/types/Average.js +2 -0
- package/dist/types/Average.js.map +1 -0
- package/dist/types/Condition.d.ts +8 -0
- package/dist/types/Condition.js +2 -0
- package/dist/types/Condition.js.map +1 -0
- package/dist/types/Conditions.d.ts +5 -0
- package/dist/types/Conditions.js +2 -0
- package/dist/types/Conditions.js.map +1 -0
- package/dist/types/Config.d.ts +12 -0
- package/dist/types/Config.js +2 -0
- package/dist/types/Config.js.map +1 -0
- package/dist/types/Flow.d.ts +5 -0
- package/dist/types/Flow.js +2 -0
- package/dist/types/Flow.js.map +1 -0
- package/dist/types/GlobalOptions.d.ts +11 -0
- package/dist/types/GlobalOptions.js +2 -0
- package/dist/types/GlobalOptions.js.map +1 -0
- package/dist/types/Inputs.d.ts +5 -0
- package/dist/types/Inputs.js +2 -0
- package/dist/types/Inputs.js.map +1 -0
- package/dist/types/JsonLikeObject.d.ts +3 -0
- package/dist/types/JsonLikeObject.js +2 -0
- package/dist/types/JsonLikeObject.js.map +1 -0
- package/dist/types/Mapper.d.ts +5 -0
- package/dist/types/Mapper.js +2 -0
- package/dist/types/Mapper.js.map +1 -0
- package/dist/types/Node.d.ts +10 -0
- package/dist/types/Node.js +2 -0
- package/dist/types/Node.js.map +1 -0
- package/dist/types/ParamsDictionary.d.ts +3 -0
- package/dist/types/ParamsDictionary.js +2 -0
- package/dist/types/ParamsDictionary.js.map +1 -0
- package/dist/types/Properties.d.ts +5 -0
- package/dist/types/Properties.js +2 -0
- package/dist/types/Properties.js.map +1 -0
- package/dist/types/Targets.d.ts +5 -0
- package/dist/types/Targets.js +2 -0
- package/dist/types/Targets.js.map +1 -0
- package/dist/types/Trigger.d.ts +5 -0
- package/dist/types/Trigger.js +2 -0
- package/dist/types/Trigger.js.map +1 -0
- package/dist/types/TriggerHttp.d.ts +7 -0
- package/dist/types/TriggerHttp.js +2 -0
- package/dist/types/TriggerHttp.js.map +1 -0
- package/dist/types/TriggerResponse.d.ts +6 -0
- package/dist/types/TriggerResponse.js +2 -0
- package/dist/types/TriggerResponse.js.map +1 -0
- package/dist/types/Triggers.d.ts +5 -0
- package/dist/types/Triggers.js +2 -0
- package/dist/types/Triggers.js.map +1 -0
- package/dist/types/TryCatch.d.ts +6 -0
- package/dist/types/TryCatch.js +2 -0
- package/dist/types/TryCatch.js.map +1 -0
- package/dist/visualization/NodeDependencyGraph.d.ts +76 -0
- package/dist/visualization/NodeDependencyGraph.js +418 -0
- package/dist/visualization/NodeDependencyGraph.js.map +1 -0
- package/dist/visualization/WorkflowVisualizer.d.ts +144 -0
- package/dist/visualization/WorkflowVisualizer.js +446 -0
- package/dist/visualization/WorkflowVisualizer.js.map +1 -0
- package/package.json +95 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import Configuration from "./Configuration";
|
|
2
|
+
import ConfigurationResolver from "./ConfigurationResolver";
|
|
3
|
+
import DefaultLogger from "./DefaultLogger";
|
|
4
|
+
import LocalStorage from "./LocalStorage";
|
|
5
|
+
import ResolverBase from "./ResolverBase";
|
|
6
|
+
import Runner from "./Runner";
|
|
7
|
+
import TriggerBase from "./TriggerBase";
|
|
8
|
+
import { RuntimeAdapterNode } from "./RuntimeAdapterNode";
|
|
9
|
+
import { RuntimeRegistry } from "./RuntimeRegistry";
|
|
10
|
+
import { BunRuntimeAdapter } from "./adapters/BunRuntimeAdapter";
|
|
11
|
+
import { DockerRuntimeAdapter } from "./adapters/DockerRuntimeAdapter";
|
|
12
|
+
import { HttpRuntimeAdapter } from "./adapters/HttpRuntimeAdapter";
|
|
13
|
+
import { NodeJsRuntimeAdapter } from "./adapters/NodeJsRuntimeAdapter";
|
|
14
|
+
import type { ExecutionResult, RuntimeAdapter, RuntimeKind } from "./adapters/RuntimeAdapter";
|
|
15
|
+
import { WasmRuntimeAdapter } from "./adapters/WasmRuntimeAdapter";
|
|
16
|
+
import { type FnNodeDefinition, FunctionNode, defineNode } from "./defineNode";
|
|
17
|
+
import { CircuitBreaker, CircuitOpenError } from "./monitoring/CircuitBreaker";
|
|
18
|
+
import { HealthCheck } from "./monitoring/HealthCheck";
|
|
19
|
+
import { bootstrapPrometheus, resetPrometheusBootstrap } from "./monitoring/PrometheusBootstrap";
|
|
20
|
+
import { PrometheusMetricsBridge } from "./monitoring/PrometheusMetricsBridge";
|
|
21
|
+
import { RateLimiter } from "./monitoring/RateLimiter";
|
|
22
|
+
import { TriggerMetricsCollector } from "./monitoring/TriggerMetricsCollector";
|
|
23
|
+
import { RuntimeAutoScaler } from "./marketplace/RuntimeAutoScaler";
|
|
24
|
+
import { RuntimeCatalog } from "./marketplace/RuntimeCatalog";
|
|
25
|
+
import { RuntimeDiscovery } from "./marketplace/RuntimeDiscovery";
|
|
26
|
+
import { RuntimeHealthMonitor } from "./marketplace/RuntimeHealthMonitor";
|
|
27
|
+
import { RuntimeMetricsDashboard } from "./marketplace/RuntimeMetricsDashboard";
|
|
28
|
+
import { FileWatcher } from "./hmr/FileWatcher";
|
|
29
|
+
import { HmrDevConsole } from "./hmr/HmrDevConsole";
|
|
30
|
+
import { HotReloadManager } from "./hmr/HotReloadManager";
|
|
31
|
+
import { ABACEngine, createDefaultABAC } from "./security/ABAC";
|
|
32
|
+
import { AuditLogger, ConsoleAuditSink, FileAuditSink, InMemoryAuditSink } from "./security/AuditLogger";
|
|
33
|
+
import { APIKeyAuthProvider, AuthMiddleware, JWTAuthProvider } from "./security/AuthMiddleware";
|
|
34
|
+
import { OAuthOIDCProvider, TokenCache } from "./security/OAuthProvider";
|
|
35
|
+
import { RBAC, createDefaultRBAC } from "./security/RBAC";
|
|
36
|
+
import { AWSSecretsProvider, EnvironmentSecretProvider, GCPSecretProvider, InMemorySecretProvider, SecretManager, VaultSecretProvider } from "./security/SecretManager";
|
|
37
|
+
import { OpenAPIGenerator } from "./openapi/OpenAPIGenerator";
|
|
38
|
+
import { GraphQLSchemaGenerator } from "./graphql/GraphQLSchemaGenerator";
|
|
39
|
+
import { NodeDependencyGraph } from "./visualization/NodeDependencyGraph";
|
|
40
|
+
import { WorkflowVisualizer } from "./visualization/WorkflowVisualizer";
|
|
41
|
+
import { PerformanceProfiler } from "./monitoring/PerformanceProfiler";
|
|
42
|
+
import { RunTracker } from "./tracing/RunTracker";
|
|
43
|
+
import { registerTraceRoutes } from "./tracing/TraceRouter";
|
|
44
|
+
import { TracingLogger } from "./tracing/TracingLogger";
|
|
45
|
+
import { sanitize as traceSanitize } from "./tracing/sanitize";
|
|
46
|
+
import { CostEstimator } from "./cost/CostEstimator";
|
|
47
|
+
import { DEFAULT_DURATIONS, DEFAULT_MEMORY, PRICING, getRuntimeCategory } from "./cost/pricing";
|
|
48
|
+
import { SentryIntegration } from "./integrations/SentryIntegration";
|
|
49
|
+
import { InMemoryCache, NodeResultCache } from "./cache/NodeResultCache";
|
|
50
|
+
import { NodeTestHarness } from "./testing/TestHarness";
|
|
51
|
+
import { TestLogger } from "./testing/TestLogger";
|
|
52
|
+
import { WorkflowTestRunner } from "./testing/WorkflowTestRunner";
|
|
53
|
+
import BlokService from "./Blok";
|
|
54
|
+
import BlokResponse, { IBlokResponse } from "./BlokResponse";
|
|
55
|
+
import NodeMap from "./NodeMap";
|
|
56
|
+
import RunnerSteps from "./RunnerSteps";
|
|
57
|
+
import Average from "./types/Average";
|
|
58
|
+
import Condition from "./types/Condition";
|
|
59
|
+
import Conditions from "./types/Conditions";
|
|
60
|
+
import Config from "./types/Config";
|
|
61
|
+
import Flow from "./types/Flow";
|
|
62
|
+
import GlobalOptions from "./types/GlobalOptions";
|
|
63
|
+
import Inputs from "./types/Inputs";
|
|
64
|
+
import JsonLikeObject from "./types/JsonLikeObject";
|
|
65
|
+
import Node from "./types/Node";
|
|
66
|
+
import ParamsDictionary from "./types/ParamsDictionary";
|
|
67
|
+
import Properties from "./types/Properties";
|
|
68
|
+
import Targets from "./types/Targets";
|
|
69
|
+
import Trigger from "./types/Trigger";
|
|
70
|
+
import TriggerHttp from "./types/TriggerHttp";
|
|
71
|
+
import TriggerResponse from "./types/TriggerResponse";
|
|
72
|
+
import Triggers from "./types/Triggers";
|
|
73
|
+
export { Configuration, Runner, ConfigurationResolver, DefaultLogger, LocalStorage, ResolverBase, TriggerBase, RuntimeRegistry, RuntimeAdapterNode, NodeJsRuntimeAdapter, DockerRuntimeAdapter, HttpRuntimeAdapter, BunRuntimeAdapter, WasmRuntimeAdapter, defineNode, FunctionNode, HealthCheck, RateLimiter, CircuitBreaker, CircuitOpenError, TriggerMetricsCollector, PrometheusMetricsBridge, bootstrapPrometheus, resetPrometheusBootstrap, RuntimeCatalog, RuntimeDiscovery, RuntimeHealthMonitor, RuntimeMetricsDashboard, RuntimeAutoScaler, FileWatcher, HotReloadManager, HmrDevConsole, AuthMiddleware, JWTAuthProvider, APIKeyAuthProvider, RBAC, createDefaultRBAC, ABACEngine, createDefaultABAC, AuditLogger, ConsoleAuditSink, FileAuditSink, InMemoryAuditSink, OAuthOIDCProvider, TokenCache, SecretManager, EnvironmentSecretProvider, InMemorySecretProvider, VaultSecretProvider, AWSSecretsProvider, GCPSecretProvider, OpenAPIGenerator, GraphQLSchemaGenerator, WorkflowVisualizer, NodeDependencyGraph, PerformanceProfiler, RunTracker, registerTraceRoutes, TracingLogger, traceSanitize, CostEstimator, PRICING, DEFAULT_DURATIONS, DEFAULT_MEMORY, getRuntimeCategory, SentryIntegration, InMemoryCache, NodeResultCache, NodeTestHarness, WorkflowTestRunner, TestLogger, Condition, Conditions, Config, Flow, Inputs, Node, Properties, Targets, Trigger, TriggerHttp, Triggers, ParamsDictionary, GlobalOptions, NodeMap, JsonLikeObject, BlokService, BlokResponse, IBlokResponse, RunnerSteps, Average, TriggerResponse, };
|
|
74
|
+
export type { RuntimeAdapter, RuntimeKind, ExecutionResult, FnNodeDefinition };
|
|
75
|
+
export type { HttpRuntimeAdapterOptions } from "./adapters/HttpRuntimeAdapter";
|
|
76
|
+
export type { HealthStatus, HealthCheckResult, DependencyHealth, DependencyCheckFn, } from "./monitoring/HealthCheck";
|
|
77
|
+
export type { RateLimitConfig, RateLimitResult } from "./monitoring/RateLimiter";
|
|
78
|
+
export type { CircuitState, CircuitBreakerConfig, CircuitBreakerStats, CircuitBreakerEvent, CircuitBreakerEventType, CircuitBreakerListener, } from "./monitoring/CircuitBreaker";
|
|
79
|
+
export type { TriggerMetrics, LatencyStats, ErrorStats, ThroughputStats, } from "./monitoring/TriggerMetricsCollector";
|
|
80
|
+
export type { PrometheusMetricsBridgeConfig, ExecutionLabels, } from "./monitoring/PrometheusMetricsBridge";
|
|
81
|
+
export type { PrometheusBootstrapConfig, PrometheusBootstrapResult, } from "./monitoring/PrometheusBootstrap";
|
|
82
|
+
export type { RuntimePackageManifest, RuntimeNodeInfo, CatalogSearchOptions, CatalogSearchResult, CatalogStats, } from "./marketplace/RuntimeCatalog";
|
|
83
|
+
export type { CompatibilityInfo, DiscoveryResult, ResolveOptions, } from "./marketplace/RuntimeDiscovery";
|
|
84
|
+
export type { RuntimeHealthStatus, HealthMonitorConfig, HealthCheckRecord, HealthChangeListener, } from "./marketplace/RuntimeHealthMonitor";
|
|
85
|
+
export type { RuntimeExecutionMetrics, LatencyPercentiles, ThroughputMetrics, ResourceMetrics, DashboardSnapshot, AggregateMetrics, } from "./marketplace/RuntimeMetricsDashboard";
|
|
86
|
+
export type { ScalingPolicy, ScalingDecision, ScalingMetrics, ScalingHistory, AutoScalerConfig, ScalingListener, } from "./marketplace/RuntimeAutoScaler";
|
|
87
|
+
export type { FileWatcherConfig, HMREvent, HMREventType, } from "./hmr/FileWatcher";
|
|
88
|
+
export type { HotReloadManagerConfig, HotReloadStats, ReloadHandler, } from "./hmr/HotReloadManager";
|
|
89
|
+
export type { AuthMiddlewareConfig, AuthProvider, AuthIdentity, AuthRequest, AuthResult, JWTAuthProviderConfig, APIKeyAuthProviderConfig, APIKeyInfo, } from "./security/AuthMiddleware";
|
|
90
|
+
export type { Action, Permission, RoleDefinition, AccessCheckResult, RBACPolicy, } from "./security/RBAC";
|
|
91
|
+
export type { ABACOperator, ABACEffect, ABACCondition, ABACConditionGroup, ABACPolicyTarget, ABACPolicy, SubjectAttributes, ResourceAttributes, EnvironmentAttributes, ABACRequest, ABACResult, } from "./security/ABAC";
|
|
92
|
+
export type { AuditEntry, AuditCategory, AuditSeverity, AuditSink, AuditLoggerConfig, } from "./security/AuditLogger";
|
|
93
|
+
export type { OAuthOIDCConfig, OIDCDiscoveryDocument, JWK, JWKS, TokenCacheStats, } from "./security/OAuthProvider";
|
|
94
|
+
export type { SecretProvider, SecretMetadata, SecretAccessEvent, SecretManagerConfig, SecretCacheConfig, SecretProviderConfig, EnvironmentProviderConfig, InMemoryProviderConfig, VaultProviderConfig, AWSSecretsProviderConfig, GCPSecretProviderConfig, } from "./security/SecretManager";
|
|
95
|
+
export type { OpenAPIGeneratorConfig, OpenAPISecurityScheme, WorkflowDefinition, OpenAPISpec, } from "./openapi/OpenAPIGenerator";
|
|
96
|
+
export type { GraphQLGeneratorConfig, GqlWorkflowDefinition, GqlFieldDef, GraphQLSchemaJSON, GraphQLTypeInfo, GraphQLFieldInfo, } from "./graphql/GraphQLSchemaGenerator";
|
|
97
|
+
export type { VisualizerConfig, WorkflowDef as VisualizerWorkflowDef, StepDef as VisualizerStepDef, ConditionDef as VisualizerConditionDef, WorkflowSummary, } from "./visualization/WorkflowVisualizer";
|
|
98
|
+
export type { StepRef, DependencyNode, DependencyEdge, DependencyGraphConfig, DependencyStats, } from "./visualization/NodeDependencyGraph";
|
|
99
|
+
export type { NodeProfile, WorkflowProfile, ProfileConfig, } from "./monitoring/PerformanceProfiler";
|
|
100
|
+
export type { NodeCostEstimate, WorkflowCostEstimate, CostEstimatorConfig, } from "./cost/CostEstimator";
|
|
101
|
+
export type { CloudProvider, RuntimeCostCategory, RuntimeCostModel, } from "./cost/pricing";
|
|
102
|
+
export type { SentryConfig, WorkflowErrorContext, SentryClient, SentryTransaction, SentrySpan, } from "./integrations/SentryIntegration";
|
|
103
|
+
export type { CacheProvider, CacheEntry, CacheSetOptions, CacheStats, InMemoryCacheConfig, CacheKeyStrategy, CustomKeyFn, CacheResult, NodeResultCacheConfig, } from "./cache/NodeResultCache";
|
|
104
|
+
export type { LogEntry } from "./testing/TestLogger";
|
|
105
|
+
export type { TestContextOverrides, TestResult, TestMetrics } from "./testing/TestHarness";
|
|
106
|
+
export type { WorkflowTestConfig, WorkflowTestResult, ExecutionTrace, WorkflowExecuteOptions, } from "./testing/WorkflowTestRunner";
|
|
107
|
+
export type { WorkflowRun, WorkflowRunStatus, NodeRun, NodeRunStatus, RunEvent, RunEventType, TraceLogEntry, WorkflowSummary as TraceWorkflowSummary, WorkflowDetail as TraceWorkflowDetail, PaginatedResult, StartRunOptions, StartNodeOptions, } from "./tracing/types";
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import Configuration from "./Configuration";
|
|
2
|
+
import ConfigurationResolver from "./ConfigurationResolver";
|
|
3
|
+
import DefaultLogger from "./DefaultLogger";
|
|
4
|
+
import LocalStorage from "./LocalStorage";
|
|
5
|
+
import ResolverBase from "./ResolverBase";
|
|
6
|
+
import Runner from "./Runner";
|
|
7
|
+
import TriggerBase from "./TriggerBase";
|
|
8
|
+
import { RuntimeAdapterNode } from "./RuntimeAdapterNode";
|
|
9
|
+
// Runtime adapters
|
|
10
|
+
import { RuntimeRegistry } from "./RuntimeRegistry";
|
|
11
|
+
import { BunRuntimeAdapter } from "./adapters/BunRuntimeAdapter";
|
|
12
|
+
import { DockerRuntimeAdapter } from "./adapters/DockerRuntimeAdapter";
|
|
13
|
+
import { HttpRuntimeAdapter } from "./adapters/HttpRuntimeAdapter";
|
|
14
|
+
import { NodeJsRuntimeAdapter } from "./adapters/NodeJsRuntimeAdapter";
|
|
15
|
+
import { WasmRuntimeAdapter } from "./adapters/WasmRuntimeAdapter";
|
|
16
|
+
// Function-first node API
|
|
17
|
+
import { FunctionNode, defineNode } from "./defineNode";
|
|
18
|
+
import { CircuitBreaker, CircuitOpenError } from "./monitoring/CircuitBreaker";
|
|
19
|
+
// Monitoring infrastructure
|
|
20
|
+
import { HealthCheck } from "./monitoring/HealthCheck";
|
|
21
|
+
import { bootstrapPrometheus, resetPrometheusBootstrap } from "./monitoring/PrometheusBootstrap";
|
|
22
|
+
import { PrometheusMetricsBridge } from "./monitoring/PrometheusMetricsBridge";
|
|
23
|
+
import { RateLimiter } from "./monitoring/RateLimiter";
|
|
24
|
+
import { TriggerMetricsCollector } from "./monitoring/TriggerMetricsCollector";
|
|
25
|
+
import { RuntimeAutoScaler } from "./marketplace/RuntimeAutoScaler";
|
|
26
|
+
// Marketplace infrastructure
|
|
27
|
+
import { RuntimeCatalog } from "./marketplace/RuntimeCatalog";
|
|
28
|
+
import { RuntimeDiscovery } from "./marketplace/RuntimeDiscovery";
|
|
29
|
+
import { RuntimeHealthMonitor } from "./marketplace/RuntimeHealthMonitor";
|
|
30
|
+
import { RuntimeMetricsDashboard } from "./marketplace/RuntimeMetricsDashboard";
|
|
31
|
+
// Hot Module Replacement (HMR)
|
|
32
|
+
import { FileWatcher } from "./hmr/FileWatcher";
|
|
33
|
+
import { HmrDevConsole } from "./hmr/HmrDevConsole";
|
|
34
|
+
import { HotReloadManager } from "./hmr/HotReloadManager";
|
|
35
|
+
import { ABACEngine, createDefaultABAC } from "./security/ABAC";
|
|
36
|
+
import { AuditLogger, ConsoleAuditSink, FileAuditSink, InMemoryAuditSink } from "./security/AuditLogger";
|
|
37
|
+
// Security
|
|
38
|
+
import { APIKeyAuthProvider, AuthMiddleware, JWTAuthProvider } from "./security/AuthMiddleware";
|
|
39
|
+
import { OAuthOIDCProvider, TokenCache } from "./security/OAuthProvider";
|
|
40
|
+
import { RBAC, createDefaultRBAC } from "./security/RBAC";
|
|
41
|
+
import { AWSSecretsProvider, EnvironmentSecretProvider, GCPSecretProvider, InMemorySecretProvider, SecretManager, VaultSecretProvider, } from "./security/SecretManager";
|
|
42
|
+
// OpenAPI
|
|
43
|
+
import { OpenAPIGenerator } from "./openapi/OpenAPIGenerator";
|
|
44
|
+
// GraphQL
|
|
45
|
+
import { GraphQLSchemaGenerator } from "./graphql/GraphQLSchemaGenerator";
|
|
46
|
+
import { NodeDependencyGraph } from "./visualization/NodeDependencyGraph";
|
|
47
|
+
// Visualization
|
|
48
|
+
import { WorkflowVisualizer } from "./visualization/WorkflowVisualizer";
|
|
49
|
+
// Performance Profiling
|
|
50
|
+
import { PerformanceProfiler } from "./monitoring/PerformanceProfiler";
|
|
51
|
+
// Tracing (Blok Studio)
|
|
52
|
+
import { RunTracker } from "./tracing/RunTracker";
|
|
53
|
+
import { registerTraceRoutes } from "./tracing/TraceRouter";
|
|
54
|
+
import { TracingLogger } from "./tracing/TracingLogger";
|
|
55
|
+
import { sanitize as traceSanitize } from "./tracing/sanitize";
|
|
56
|
+
// Cost Estimation
|
|
57
|
+
import { CostEstimator } from "./cost/CostEstimator";
|
|
58
|
+
import { DEFAULT_DURATIONS, DEFAULT_MEMORY, PRICING, getRuntimeCategory } from "./cost/pricing";
|
|
59
|
+
// Integrations
|
|
60
|
+
import { SentryIntegration } from "./integrations/SentryIntegration";
|
|
61
|
+
// Cache
|
|
62
|
+
import { InMemoryCache, NodeResultCache } from "./cache/NodeResultCache";
|
|
63
|
+
// Testing Framework
|
|
64
|
+
import { NodeTestHarness } from "./testing/TestHarness";
|
|
65
|
+
import { TestLogger } from "./testing/TestLogger";
|
|
66
|
+
import { WorkflowTestRunner } from "./testing/WorkflowTestRunner";
|
|
67
|
+
// types
|
|
68
|
+
import BlokService from "./Blok";
|
|
69
|
+
import BlokResponse from "./BlokResponse";
|
|
70
|
+
import NodeMap from "./NodeMap";
|
|
71
|
+
import RunnerSteps from "./RunnerSteps";
|
|
72
|
+
export { Configuration, Runner, ConfigurationResolver, DefaultLogger, LocalStorage, ResolverBase, TriggerBase,
|
|
73
|
+
// Runtime adapters
|
|
74
|
+
RuntimeRegistry, RuntimeAdapterNode, NodeJsRuntimeAdapter, DockerRuntimeAdapter, HttpRuntimeAdapter, BunRuntimeAdapter, WasmRuntimeAdapter,
|
|
75
|
+
// Function-first API
|
|
76
|
+
defineNode, FunctionNode,
|
|
77
|
+
// Monitoring
|
|
78
|
+
HealthCheck, RateLimiter, CircuitBreaker, CircuitOpenError, TriggerMetricsCollector, PrometheusMetricsBridge, bootstrapPrometheus, resetPrometheusBootstrap,
|
|
79
|
+
// Marketplace
|
|
80
|
+
RuntimeCatalog, RuntimeDiscovery, RuntimeHealthMonitor, RuntimeMetricsDashboard, RuntimeAutoScaler,
|
|
81
|
+
// HMR
|
|
82
|
+
FileWatcher, HotReloadManager, HmrDevConsole,
|
|
83
|
+
// Security
|
|
84
|
+
AuthMiddleware, JWTAuthProvider, APIKeyAuthProvider, RBAC, createDefaultRBAC, ABACEngine, createDefaultABAC, AuditLogger, ConsoleAuditSink, FileAuditSink, InMemoryAuditSink,
|
|
85
|
+
// OAuth 2.0 / OIDC
|
|
86
|
+
OAuthOIDCProvider, TokenCache,
|
|
87
|
+
// Secret Management
|
|
88
|
+
SecretManager, EnvironmentSecretProvider, InMemorySecretProvider, VaultSecretProvider, AWSSecretsProvider, GCPSecretProvider,
|
|
89
|
+
// OpenAPI
|
|
90
|
+
OpenAPIGenerator,
|
|
91
|
+
// GraphQL
|
|
92
|
+
GraphQLSchemaGenerator,
|
|
93
|
+
// Visualization
|
|
94
|
+
WorkflowVisualizer, NodeDependencyGraph,
|
|
95
|
+
// Performance Profiling
|
|
96
|
+
PerformanceProfiler,
|
|
97
|
+
// Tracing (Blok Studio)
|
|
98
|
+
RunTracker, registerTraceRoutes, TracingLogger, traceSanitize,
|
|
99
|
+
// Cost Estimation
|
|
100
|
+
CostEstimator, PRICING, DEFAULT_DURATIONS, DEFAULT_MEMORY, getRuntimeCategory,
|
|
101
|
+
// Integrations
|
|
102
|
+
SentryIntegration,
|
|
103
|
+
// Cache
|
|
104
|
+
InMemoryCache, NodeResultCache,
|
|
105
|
+
// Testing
|
|
106
|
+
NodeTestHarness, WorkflowTestRunner, TestLogger, NodeMap, BlokService, BlokResponse, RunnerSteps, };
|
|
107
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* APMIntegration - Unified APM bridge for DataDog, New Relic, and generic OTLP backends
|
|
3
|
+
*
|
|
4
|
+
* Configures OpenTelemetry trace and metric exporters targeting specific APM vendors.
|
|
5
|
+
* Each vendor has pre-configured OTLP endpoints and required headers/env vars.
|
|
6
|
+
*
|
|
7
|
+
* Uses lazy dynamic imports so vendor-specific SDK packages are optional.
|
|
8
|
+
* Falls back to generic OTLP if vendor-specific packages are not installed.
|
|
9
|
+
*
|
|
10
|
+
* Supported vendors:
|
|
11
|
+
* - **DataDog**: Sends traces/metrics via dd-trace or OTLP to DataDog Agent
|
|
12
|
+
* - **New Relic**: Sends traces/metrics via OTLP to New Relic ingest endpoint
|
|
13
|
+
* - **Generic OTLP**: Any OTLP-compatible backend (Jaeger, Grafana Tempo, etc.)
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* import { APMIntegration } from "@blokjs/runner";
|
|
18
|
+
*
|
|
19
|
+
* // DataDog
|
|
20
|
+
* const apm = new APMIntegration({
|
|
21
|
+
* vendor: "datadog",
|
|
22
|
+
* serviceName: "blok-http",
|
|
23
|
+
* datadogAgentUrl: "http://localhost:4318",
|
|
24
|
+
* });
|
|
25
|
+
* await apm.init();
|
|
26
|
+
*
|
|
27
|
+
* // New Relic
|
|
28
|
+
* const apm = new APMIntegration({
|
|
29
|
+
* vendor: "newrelic",
|
|
30
|
+
* serviceName: "blok-http",
|
|
31
|
+
* newrelicLicenseKey: process.env.NEW_RELIC_LICENSE_KEY!,
|
|
32
|
+
* });
|
|
33
|
+
* await apm.init();
|
|
34
|
+
*
|
|
35
|
+
* // Generic OTLP
|
|
36
|
+
* const apm = new APMIntegration({
|
|
37
|
+
* vendor: "otlp",
|
|
38
|
+
* serviceName: "blok-http",
|
|
39
|
+
* otlpEndpoint: "http://tempo:4318/v1/traces",
|
|
40
|
+
* });
|
|
41
|
+
* await apm.init();
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export type APMVendor = "datadog" | "newrelic" | "otlp";
|
|
45
|
+
export interface APMConfig {
|
|
46
|
+
/** APM vendor */
|
|
47
|
+
vendor: APMVendor;
|
|
48
|
+
/** Service name */
|
|
49
|
+
serviceName: string;
|
|
50
|
+
/** Service version */
|
|
51
|
+
serviceVersion?: string;
|
|
52
|
+
/** Environment (defaults to NODE_ENV) */
|
|
53
|
+
environment?: string;
|
|
54
|
+
/** DataDog: Agent OTLP endpoint (default: http://localhost:4318) */
|
|
55
|
+
datadogAgentUrl?: string;
|
|
56
|
+
/** DataDog: dd-trace service name override */
|
|
57
|
+
datadogServiceName?: string;
|
|
58
|
+
/** New Relic: License key (or set NEW_RELIC_LICENSE_KEY env) */
|
|
59
|
+
newrelicLicenseKey?: string;
|
|
60
|
+
/** New Relic: OTLP endpoint (default: US region endpoint) */
|
|
61
|
+
newrelicEndpoint?: string;
|
|
62
|
+
/** New Relic: Region "us" | "eu" (default: "us") */
|
|
63
|
+
newrelicRegion?: "us" | "eu";
|
|
64
|
+
/** Generic OTLP: endpoint URL */
|
|
65
|
+
otlpEndpoint?: string;
|
|
66
|
+
/** Generic OTLP: additional headers */
|
|
67
|
+
otlpHeaders?: Record<string, string>;
|
|
68
|
+
/** Trace sampling ratio (0.0 to 1.0, default: 1.0) */
|
|
69
|
+
samplingRatio?: number;
|
|
70
|
+
/** Enable debug logging */
|
|
71
|
+
debug?: boolean;
|
|
72
|
+
}
|
|
73
|
+
export interface APMBootstrapResult {
|
|
74
|
+
/** Vendor name */
|
|
75
|
+
vendor: APMVendor;
|
|
76
|
+
/** Gracefully shut down the APM integration */
|
|
77
|
+
shutdown: () => Promise<void>;
|
|
78
|
+
/** Force flush pending data */
|
|
79
|
+
forceFlush: () => Promise<void>;
|
|
80
|
+
}
|
|
81
|
+
export declare class APMIntegration {
|
|
82
|
+
private config;
|
|
83
|
+
private initialized;
|
|
84
|
+
private shutdownFn;
|
|
85
|
+
private flushFn;
|
|
86
|
+
constructor(config: APMConfig);
|
|
87
|
+
/**
|
|
88
|
+
* Initialize the APM integration.
|
|
89
|
+
* Dynamically loads vendor-specific or generic OTLP packages.
|
|
90
|
+
* Returns false if required packages are not installed.
|
|
91
|
+
*/
|
|
92
|
+
init(): Promise<boolean>;
|
|
93
|
+
/**
|
|
94
|
+
* Initialize DataDog APM.
|
|
95
|
+
*
|
|
96
|
+
* Strategy: Use OTLP export to the DataDog Agent, which accepts OTLP
|
|
97
|
+
* on port 4318 (HTTP) or 4317 (gRPC) when configured with
|
|
98
|
+
* DD_OTLP_CONFIG_RECEIVER_PROTOCOLS_HTTP_ENDPOINT.
|
|
99
|
+
*/
|
|
100
|
+
private initDataDog;
|
|
101
|
+
/**
|
|
102
|
+
* Initialize New Relic APM.
|
|
103
|
+
*
|
|
104
|
+
* Strategy: Send traces via OTLP to New Relic's ingest endpoint.
|
|
105
|
+
* Requires NEW_RELIC_LICENSE_KEY in headers.
|
|
106
|
+
*/
|
|
107
|
+
private initNewRelic;
|
|
108
|
+
/**
|
|
109
|
+
* Initialize generic OTLP backend.
|
|
110
|
+
*/
|
|
111
|
+
private initOTLP;
|
|
112
|
+
/**
|
|
113
|
+
* Shared OTLP bootstrap using TracingBootstrap.
|
|
114
|
+
*/
|
|
115
|
+
private bootstrapOTLPTracing;
|
|
116
|
+
/**
|
|
117
|
+
* Check if the APM integration is initialized.
|
|
118
|
+
*/
|
|
119
|
+
isInitialized(): boolean;
|
|
120
|
+
/**
|
|
121
|
+
* Get the configured vendor.
|
|
122
|
+
*/
|
|
123
|
+
getVendor(): APMVendor;
|
|
124
|
+
/**
|
|
125
|
+
* Shut down the APM integration, flushing pending data.
|
|
126
|
+
*/
|
|
127
|
+
shutdown(): Promise<void>;
|
|
128
|
+
/**
|
|
129
|
+
* Force flush pending traces/metrics.
|
|
130
|
+
*/
|
|
131
|
+
forceFlush(): Promise<void>;
|
|
132
|
+
/**
|
|
133
|
+
* Get the OTLP endpoint configuration for the current vendor.
|
|
134
|
+
* Useful for debugging and diagnostics.
|
|
135
|
+
*/
|
|
136
|
+
getEndpointInfo(): {
|
|
137
|
+
vendor: APMVendor;
|
|
138
|
+
endpoint: string;
|
|
139
|
+
initialized: boolean;
|
|
140
|
+
};
|
|
141
|
+
}
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* APMIntegration - Unified APM bridge for DataDog, New Relic, and generic OTLP backends
|
|
3
|
+
*
|
|
4
|
+
* Configures OpenTelemetry trace and metric exporters targeting specific APM vendors.
|
|
5
|
+
* Each vendor has pre-configured OTLP endpoints and required headers/env vars.
|
|
6
|
+
*
|
|
7
|
+
* Uses lazy dynamic imports so vendor-specific SDK packages are optional.
|
|
8
|
+
* Falls back to generic OTLP if vendor-specific packages are not installed.
|
|
9
|
+
*
|
|
10
|
+
* Supported vendors:
|
|
11
|
+
* - **DataDog**: Sends traces/metrics via dd-trace or OTLP to DataDog Agent
|
|
12
|
+
* - **New Relic**: Sends traces/metrics via OTLP to New Relic ingest endpoint
|
|
13
|
+
* - **Generic OTLP**: Any OTLP-compatible backend (Jaeger, Grafana Tempo, etc.)
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* import { APMIntegration } from "@blokjs/runner";
|
|
18
|
+
*
|
|
19
|
+
* // DataDog
|
|
20
|
+
* const apm = new APMIntegration({
|
|
21
|
+
* vendor: "datadog",
|
|
22
|
+
* serviceName: "blok-http",
|
|
23
|
+
* datadogAgentUrl: "http://localhost:4318",
|
|
24
|
+
* });
|
|
25
|
+
* await apm.init();
|
|
26
|
+
*
|
|
27
|
+
* // New Relic
|
|
28
|
+
* const apm = new APMIntegration({
|
|
29
|
+
* vendor: "newrelic",
|
|
30
|
+
* serviceName: "blok-http",
|
|
31
|
+
* newrelicLicenseKey: process.env.NEW_RELIC_LICENSE_KEY!,
|
|
32
|
+
* });
|
|
33
|
+
* await apm.init();
|
|
34
|
+
*
|
|
35
|
+
* // Generic OTLP
|
|
36
|
+
* const apm = new APMIntegration({
|
|
37
|
+
* vendor: "otlp",
|
|
38
|
+
* serviceName: "blok-http",
|
|
39
|
+
* otlpEndpoint: "http://tempo:4318/v1/traces",
|
|
40
|
+
* });
|
|
41
|
+
* await apm.init();
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export class APMIntegration {
|
|
45
|
+
config;
|
|
46
|
+
initialized = false;
|
|
47
|
+
shutdownFn = null;
|
|
48
|
+
flushFn = null;
|
|
49
|
+
constructor(config) {
|
|
50
|
+
this.config = {
|
|
51
|
+
serviceVersion: "0.0.1",
|
|
52
|
+
environment: process.env.NODE_ENV || "development",
|
|
53
|
+
samplingRatio: 1.0,
|
|
54
|
+
debug: false,
|
|
55
|
+
...config,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Initialize the APM integration.
|
|
60
|
+
* Dynamically loads vendor-specific or generic OTLP packages.
|
|
61
|
+
* Returns false if required packages are not installed.
|
|
62
|
+
*/
|
|
63
|
+
async init() {
|
|
64
|
+
if (this.initialized)
|
|
65
|
+
return true;
|
|
66
|
+
try {
|
|
67
|
+
switch (this.config.vendor) {
|
|
68
|
+
case "datadog":
|
|
69
|
+
return await this.initDataDog();
|
|
70
|
+
case "newrelic":
|
|
71
|
+
return await this.initNewRelic();
|
|
72
|
+
case "otlp":
|
|
73
|
+
return await this.initOTLP();
|
|
74
|
+
default:
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Initialize DataDog APM.
|
|
84
|
+
*
|
|
85
|
+
* Strategy: Use OTLP export to the DataDog Agent, which accepts OTLP
|
|
86
|
+
* on port 4318 (HTTP) or 4317 (gRPC) when configured with
|
|
87
|
+
* DD_OTLP_CONFIG_RECEIVER_PROTOCOLS_HTTP_ENDPOINT.
|
|
88
|
+
*/
|
|
89
|
+
async initDataDog() {
|
|
90
|
+
const endpoint = this.config.datadogAgentUrl || "http://localhost:4318/v1/traces";
|
|
91
|
+
const headers = {};
|
|
92
|
+
// DataDog Agent does not require auth headers for local OTLP,
|
|
93
|
+
// but we pass service metadata via resource attributes.
|
|
94
|
+
return this.bootstrapOTLPTracing(endpoint, headers);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Initialize New Relic APM.
|
|
98
|
+
*
|
|
99
|
+
* Strategy: Send traces via OTLP to New Relic's ingest endpoint.
|
|
100
|
+
* Requires NEW_RELIC_LICENSE_KEY in headers.
|
|
101
|
+
*/
|
|
102
|
+
async initNewRelic() {
|
|
103
|
+
const licenseKey = this.config.newrelicLicenseKey || process.env.NEW_RELIC_LICENSE_KEY || "";
|
|
104
|
+
if (!licenseKey) {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
const region = this.config.newrelicRegion ?? "us";
|
|
108
|
+
const endpoint = this.config.newrelicEndpoint ||
|
|
109
|
+
(region === "eu" ? "https://otlp.eu01.nr-data.net:4318/v1/traces" : "https://otlp.nr-data.net:4318/v1/traces");
|
|
110
|
+
const headers = {
|
|
111
|
+
"api-key": licenseKey,
|
|
112
|
+
};
|
|
113
|
+
return this.bootstrapOTLPTracing(endpoint, headers);
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Initialize generic OTLP backend.
|
|
117
|
+
*/
|
|
118
|
+
async initOTLP() {
|
|
119
|
+
const endpoint = this.config.otlpEndpoint ||
|
|
120
|
+
process.env.OTEL_EXPORTER_OTLP_TRACES_ENDPOINT ||
|
|
121
|
+
process.env.OTEL_EXPORTER_OTLP_ENDPOINT ||
|
|
122
|
+
"http://localhost:4318/v1/traces";
|
|
123
|
+
return this.bootstrapOTLPTracing(endpoint, this.config.otlpHeaders || {});
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Shared OTLP bootstrap using TracingBootstrap.
|
|
127
|
+
*/
|
|
128
|
+
async bootstrapOTLPTracing(endpoint, headers) {
|
|
129
|
+
try {
|
|
130
|
+
// Use our TracingBootstrap module
|
|
131
|
+
const { bootstrapTracing } = await import("../monitoring/TracingBootstrap");
|
|
132
|
+
const result = await bootstrapTracing({
|
|
133
|
+
serviceName: this.config.serviceName,
|
|
134
|
+
serviceVersion: this.config.serviceVersion,
|
|
135
|
+
exporter: "otlp",
|
|
136
|
+
endpoint,
|
|
137
|
+
headers,
|
|
138
|
+
samplingRatio: this.config.samplingRatio,
|
|
139
|
+
});
|
|
140
|
+
if (!result)
|
|
141
|
+
return false;
|
|
142
|
+
this.shutdownFn = result.shutdown;
|
|
143
|
+
this.flushFn = result.forceFlush;
|
|
144
|
+
this.initialized = true;
|
|
145
|
+
return true;
|
|
146
|
+
}
|
|
147
|
+
catch {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Check if the APM integration is initialized.
|
|
153
|
+
*/
|
|
154
|
+
isInitialized() {
|
|
155
|
+
return this.initialized;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Get the configured vendor.
|
|
159
|
+
*/
|
|
160
|
+
getVendor() {
|
|
161
|
+
return this.config.vendor;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Shut down the APM integration, flushing pending data.
|
|
165
|
+
*/
|
|
166
|
+
async shutdown() {
|
|
167
|
+
if (this.shutdownFn) {
|
|
168
|
+
await this.shutdownFn();
|
|
169
|
+
}
|
|
170
|
+
this.initialized = false;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Force flush pending traces/metrics.
|
|
174
|
+
*/
|
|
175
|
+
async forceFlush() {
|
|
176
|
+
if (this.flushFn) {
|
|
177
|
+
await this.flushFn();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Get the OTLP endpoint configuration for the current vendor.
|
|
182
|
+
* Useful for debugging and diagnostics.
|
|
183
|
+
*/
|
|
184
|
+
getEndpointInfo() {
|
|
185
|
+
let endpoint;
|
|
186
|
+
switch (this.config.vendor) {
|
|
187
|
+
case "datadog":
|
|
188
|
+
endpoint = this.config.datadogAgentUrl || "http://localhost:4318/v1/traces";
|
|
189
|
+
break;
|
|
190
|
+
case "newrelic": {
|
|
191
|
+
const region = this.config.newrelicRegion ?? "us";
|
|
192
|
+
endpoint =
|
|
193
|
+
this.config.newrelicEndpoint ||
|
|
194
|
+
(region === "eu"
|
|
195
|
+
? "https://otlp.eu01.nr-data.net:4318/v1/traces"
|
|
196
|
+
: "https://otlp.nr-data.net:4318/v1/traces");
|
|
197
|
+
break;
|
|
198
|
+
}
|
|
199
|
+
case "otlp":
|
|
200
|
+
endpoint = this.config.otlpEndpoint || "http://localhost:4318/v1/traces";
|
|
201
|
+
break;
|
|
202
|
+
default:
|
|
203
|
+
endpoint = "unknown";
|
|
204
|
+
}
|
|
205
|
+
return {
|
|
206
|
+
vendor: this.config.vendor,
|
|
207
|
+
endpoint,
|
|
208
|
+
initialized: this.initialized,
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
//# sourceMappingURL=APMIntegration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"APMIntegration.js","sourceRoot":"","sources":["../../src/integrations/APMIntegration.ts"],"names":[],"mappings":"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"}
|