UNPKG

@studion/infra-code-blocks

Version:
40 lines 2.58 kB
import * as pulumi from '@pulumi/pulumi'; import * as aws from '@pulumi/aws'; import { OtelCollector } from '.'; import { OTLPReceiver } from './otlp-receiver'; import { PrometheusRemoteWriteExporter } from './prometheus-remote-write-exporter'; export declare namespace OtelCollectorBuilder { type WithDefaultArgs = { prometheusNamespace: PrometheusRemoteWriteExporter.Config['namespace']; prometheusWorkspace: aws.amp.Workspace; region: string; logGroup: aws.cloudwatch.LogGroup; logStreamName: OtelCollector.AwsCloudWatchLogsExporterConfig['log_stream_name']; }; } export declare class OtelCollectorBuilder { private readonly _serviceName; private readonly _env; private readonly _configBuilder; private _taskRoleInlinePolicies; constructor(serviceName: pulumi.Input<string>, env: pulumi.Input<string>); withOTLPReceiver(protocols?: OTLPReceiver.Protocol[]): this; withBatchProcessor(name?: string, size?: number, maxSize?: number, timeout?: string): this; withMemoryLimiterProcessor(checkInterval?: string, limitPercentage?: number, spikeLimitPercentage?: number): this; withAWSXRayExporter(region: string): this; withCloudWatchLogsExporter(region: OtelCollector.AwsCloudWatchLogsExporterConfig['region'], logGroup: aws.cloudwatch.LogGroup, logStreamName: OtelCollector.AwsCloudWatchLogsExporterConfig['log_stream_name']): this; withHealthCheckExtension(endpoint?: string): this; withPprofExtension(endpoint?: string): this; withAPS(namespace: pulumi.Input<string>, workspace: aws.amp.Workspace, region: string): this; withDebug(verbosity?: 'normal' | 'basic' | 'detailed'): this; withTelemetry(logLevel?: 'debug' | 'warn' | 'error', metricsVerbosity?: 'basic' | 'normal' | 'detailed'): this; withMetricsPipeline(receivers: OtelCollector.ReceiverType[], processors: OtelCollector.ProcessorType[], exporters: OtelCollector.ExporterType[]): this; withTracesPipeline(receivers: OtelCollector.ReceiverType[], processors: OtelCollector.ProcessorType[], exporters: OtelCollector.ExporterType[]): this; withLogsPipeline(receivers: OtelCollector.ReceiverType[], processors: OtelCollector.ProcessorType[], exporters: OtelCollector.ExporterType[]): this; withDefault({ prometheusNamespace, prometheusWorkspace, region, logGroup, logStreamName, }: OtelCollectorBuilder.WithDefaultArgs): this; build(): OtelCollector; private createAPSInlinePolicy; private createAWSXRayPolicy; private createCloudWatchLogsPolicy; } //# sourceMappingURL=builder.d.ts.map