Documentation ¶
Overview ¶
CDK Construct Library to automatically instrument Python and Node Lambda functions with Datadog using AWS CDK v2
Index ¶
- func DatadogLambda_IsConstruct(x interface{}) *bool
- func DatadogStepFunctions_BuildLambdaPayloadToMergeTraces(payload *map[string]interface{}) *map[string]interface{}
- func DatadogStepFunctions_BuildStepFunctionTaskInputToMergeTraces(input *map[string]interface{}) *map[string]interface{}
- func DatadogStepFunctions_IsConstruct(x interface{}) *bool
- func Datadog_IsConstruct(x interface{}) *bool
- func NewDatadogLambda_Override(d DatadogLambda, scope constructs.Construct, id *string, ...)
- func NewDatadogStepFunctions_Override(d DatadogStepFunctions, scope constructs.Construct, id *string, ...)
- func NewDatadog_Override(d Datadog, scope constructs.Construct, id *string, props *DatadogProps)
- func NewTransport_Override(t Transport, flushMetricsToLogs *bool, site *string, apiKey *string, ...)
- type Datadog
- type DatadogLambda
- type DatadogLambdaProps
- type DatadogLambdaStrictProps
- type DatadogProps
- type DatadogStepFunctions
- type DatadogStepFunctionsProps
- type DatadogStrictProps
- type Node
- type Runtime
- type RuntimeType
- type TagKeys
- type Transport
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DatadogLambda_IsConstruct ¶ added in v1.16.0
func DatadogLambda_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func DatadogStepFunctions_BuildLambdaPayloadToMergeTraces ¶ added in v1.19.0
func DatadogStepFunctions_BuildStepFunctionTaskInputToMergeTraces ¶ added in v1.19.0
func DatadogStepFunctions_IsConstruct ¶ added in v1.19.0
func DatadogStepFunctions_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func Datadog_IsConstruct ¶
func Datadog_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func NewDatadogLambda_Override ¶ added in v1.16.0
func NewDatadogLambda_Override(d DatadogLambda, scope constructs.Construct, id *string, props *DatadogLambdaProps)
func NewDatadogStepFunctions_Override ¶ added in v1.19.0
func NewDatadogStepFunctions_Override(d DatadogStepFunctions, scope constructs.Construct, id *string, props *DatadogStepFunctionsProps)
func NewDatadog_Override ¶
func NewDatadog_Override(d Datadog, scope constructs.Construct, id *string, props *DatadogProps)
Types ¶
type Datadog ¶
type Datadog interface { DatadogLambda // The tree node. Node() constructs.Node Props() *DatadogLambdaProps SetProps(val *DatadogLambdaProps) Scope() constructs.Construct SetScope(val constructs.Construct) Transport() Transport SetTransport(val Transport) AddForwarderToNonLambdaLogGroups(logGroups *[]awslogs.ILogGroup) AddGitCommitMetadata(lambdaFunctions *[]interface{}, gitCommitSha *string, gitRepoUrl *string) AddLambdaFunctions(lambdaFunctions *[]interface{}, construct constructs.Construct) // Returns a string representation of this construct. ToString() *string }
For backward compatibility.
It's recommended to use DatadogLambda for users who want to add Datadog monitoring for Lambda functions.
func NewDatadog ¶
func NewDatadog(scope constructs.Construct, id *string, props *DatadogProps) Datadog
type DatadogLambda ¶ added in v1.16.0
type DatadogLambda interface { constructs.Construct // The tree node. Node() constructs.Node Props() *DatadogLambdaProps SetProps(val *DatadogLambdaProps) Scope() constructs.Construct SetScope(val constructs.Construct) Transport() Transport SetTransport(val Transport) AddForwarderToNonLambdaLogGroups(logGroups *[]awslogs.ILogGroup) AddGitCommitMetadata(lambdaFunctions *[]interface{}, gitCommitSha *string, gitRepoUrl *string) AddLambdaFunctions(lambdaFunctions *[]interface{}, construct constructs.Construct) // Returns a string representation of this construct. ToString() *string }
func NewDatadogLambda ¶ added in v1.16.0
func NewDatadogLambda(scope constructs.Construct, id *string, props *DatadogLambdaProps) DatadogLambda
type DatadogLambdaProps ¶ added in v1.16.0
type DatadogLambdaProps struct { AddLayers *bool `field:"optional" json:"addLayers" yaml:"addLayers"` ApiKey *string `field:"optional" json:"apiKey" yaml:"apiKey"` ApiKeySecret awssecretsmanager.ISecret `field:"optional" json:"apiKeySecret" yaml:"apiKeySecret"` ApiKeySecretArn *string `field:"optional" json:"apiKeySecretArn" yaml:"apiKeySecretArn"` ApiKmsKey *string `field:"optional" json:"apiKmsKey" yaml:"apiKmsKey"` ApmFlushDeadline interface{} `field:"optional" json:"apmFlushDeadline" yaml:"apmFlushDeadline"` CaptureLambdaPayload *bool `field:"optional" json:"captureLambdaPayload" yaml:"captureLambdaPayload"` ColdStartTraceSkipLibs *string `field:"optional" json:"coldStartTraceSkipLibs" yaml:"coldStartTraceSkipLibs"` CreateForwarderPermissions *bool `field:"optional" json:"createForwarderPermissions" yaml:"createForwarderPermissions"` DecodeAuthorizerContext *bool `field:"optional" json:"decodeAuthorizerContext" yaml:"decodeAuthorizerContext"` DotnetLayerVersion *float64 `field:"optional" json:"dotnetLayerVersion" yaml:"dotnetLayerVersion"` EnableColdStartTracing *bool `field:"optional" json:"enableColdStartTracing" yaml:"enableColdStartTracing"` EnableDatadogASM *bool `field:"optional" json:"enableDatadogASM" yaml:"enableDatadogASM"` EnableDatadogLogs *bool `field:"optional" json:"enableDatadogLogs" yaml:"enableDatadogLogs"` EnableDatadogTracing *bool `field:"optional" json:"enableDatadogTracing" yaml:"enableDatadogTracing"` EnableMergeXrayTraces *bool `field:"optional" json:"enableMergeXrayTraces" yaml:"enableMergeXrayTraces"` EnableProfiling *bool `field:"optional" json:"enableProfiling" yaml:"enableProfiling"` EncodeAuthorizerContext *bool `field:"optional" json:"encodeAuthorizerContext" yaml:"encodeAuthorizerContext"` Env *string `field:"optional" json:"env" yaml:"env"` ExtensionLayerVersion *float64 `field:"optional" json:"extensionLayerVersion" yaml:"extensionLayerVersion"` FlushMetricsToLogs *bool `field:"optional" json:"flushMetricsToLogs" yaml:"flushMetricsToLogs"` ForwarderArn *string `field:"optional" json:"forwarderArn" yaml:"forwarderArn"` GrantSecretReadAccess *bool `field:"optional" json:"grantSecretReadAccess" yaml:"grantSecretReadAccess"` InjectLogContext *bool `field:"optional" json:"injectLogContext" yaml:"injectLogContext"` JavaLayerVersion *float64 `field:"optional" json:"javaLayerVersion" yaml:"javaLayerVersion"` LogLevel *string `field:"optional" json:"logLevel" yaml:"logLevel"` MinColdStartTraceDuration *float64 `field:"optional" json:"minColdStartTraceDuration" yaml:"minColdStartTraceDuration"` NodeLayerVersion *float64 `field:"optional" json:"nodeLayerVersion" yaml:"nodeLayerVersion"` PythonLayerVersion *float64 `field:"optional" json:"pythonLayerVersion" yaml:"pythonLayerVersion"` RedirectHandler *bool `field:"optional" json:"redirectHandler" yaml:"redirectHandler"` Service *string `field:"optional" json:"service" yaml:"service"` Site *string `field:"optional" json:"site" yaml:"site"` SourceCodeIntegration *bool `field:"optional" json:"sourceCodeIntegration" yaml:"sourceCodeIntegration"` Tags *string `field:"optional" json:"tags" yaml:"tags"` UseLayersFromAccount *string `field:"optional" json:"useLayersFromAccount" yaml:"useLayersFromAccount"` Version *string `field:"optional" json:"version" yaml:"version"` }
type DatadogLambdaStrictProps ¶ added in v1.16.0
type DatadogLambdaStrictProps struct { AddLayers *bool `field:"required" json:"addLayers" yaml:"addLayers"` CaptureLambdaPayload *bool `field:"required" json:"captureLambdaPayload" yaml:"captureLambdaPayload"` EnableDatadogASM *bool `field:"required" json:"enableDatadogASM" yaml:"enableDatadogASM"` EnableDatadogLogs *bool `field:"required" json:"enableDatadogLogs" yaml:"enableDatadogLogs"` EnableDatadogTracing *bool `field:"required" json:"enableDatadogTracing" yaml:"enableDatadogTracing"` EnableMergeXrayTraces *bool `field:"required" json:"enableMergeXrayTraces" yaml:"enableMergeXrayTraces"` GrantSecretReadAccess *bool `field:"required" json:"grantSecretReadAccess" yaml:"grantSecretReadAccess"` InjectLogContext *bool `field:"required" json:"injectLogContext" yaml:"injectLogContext"` ApiKey *string `field:"optional" json:"apiKey" yaml:"apiKey"` ApiKeySecret awssecretsmanager.ISecret `field:"optional" json:"apiKeySecret" yaml:"apiKeySecret"` ApiKeySecretArn *string `field:"optional" json:"apiKeySecretArn" yaml:"apiKeySecretArn"` ApiKmsKey *string `field:"optional" json:"apiKmsKey" yaml:"apiKmsKey"` ExtensionLayerVersion *float64 `field:"optional" json:"extensionLayerVersion" yaml:"extensionLayerVersion"` FlushMetricsToLogs *bool `field:"optional" json:"flushMetricsToLogs" yaml:"flushMetricsToLogs"` ForwarderArn *string `field:"optional" json:"forwarderArn" yaml:"forwarderArn"` JavaLayerVersion *float64 `field:"optional" json:"javaLayerVersion" yaml:"javaLayerVersion"` LogLevel *string `field:"optional" json:"logLevel" yaml:"logLevel"` NodeLayerVersion *float64 `field:"optional" json:"nodeLayerVersion" yaml:"nodeLayerVersion"` PythonLayerVersion *float64 `field:"optional" json:"pythonLayerVersion" yaml:"pythonLayerVersion"` RedirectHandler *bool `field:"optional" json:"redirectHandler" yaml:"redirectHandler"` Site *string `field:"optional" json:"site" yaml:"site"` SourceCodeIntegration *bool `field:"optional" json:"sourceCodeIntegration" yaml:"sourceCodeIntegration"` }
type DatadogProps ¶
type DatadogProps struct { AddLayers *bool `field:"optional" json:"addLayers" yaml:"addLayers"` ApiKey *string `field:"optional" json:"apiKey" yaml:"apiKey"` ApiKeySecret awssecretsmanager.ISecret `field:"optional" json:"apiKeySecret" yaml:"apiKeySecret"` ApiKeySecretArn *string `field:"optional" json:"apiKeySecretArn" yaml:"apiKeySecretArn"` ApiKmsKey *string `field:"optional" json:"apiKmsKey" yaml:"apiKmsKey"` ApmFlushDeadline interface{} `field:"optional" json:"apmFlushDeadline" yaml:"apmFlushDeadline"` CaptureLambdaPayload *bool `field:"optional" json:"captureLambdaPayload" yaml:"captureLambdaPayload"` ColdStartTraceSkipLibs *string `field:"optional" json:"coldStartTraceSkipLibs" yaml:"coldStartTraceSkipLibs"` CreateForwarderPermissions *bool `field:"optional" json:"createForwarderPermissions" yaml:"createForwarderPermissions"` DecodeAuthorizerContext *bool `field:"optional" json:"decodeAuthorizerContext" yaml:"decodeAuthorizerContext"` DotnetLayerVersion *float64 `field:"optional" json:"dotnetLayerVersion" yaml:"dotnetLayerVersion"` EnableColdStartTracing *bool `field:"optional" json:"enableColdStartTracing" yaml:"enableColdStartTracing"` EnableDatadogASM *bool `field:"optional" json:"enableDatadogASM" yaml:"enableDatadogASM"` EnableDatadogLogs *bool `field:"optional" json:"enableDatadogLogs" yaml:"enableDatadogLogs"` EnableDatadogTracing *bool `field:"optional" json:"enableDatadogTracing" yaml:"enableDatadogTracing"` EnableMergeXrayTraces *bool `field:"optional" json:"enableMergeXrayTraces" yaml:"enableMergeXrayTraces"` EnableProfiling *bool `field:"optional" json:"enableProfiling" yaml:"enableProfiling"` EncodeAuthorizerContext *bool `field:"optional" json:"encodeAuthorizerContext" yaml:"encodeAuthorizerContext"` Env *string `field:"optional" json:"env" yaml:"env"` ExtensionLayerVersion *float64 `field:"optional" json:"extensionLayerVersion" yaml:"extensionLayerVersion"` FlushMetricsToLogs *bool `field:"optional" json:"flushMetricsToLogs" yaml:"flushMetricsToLogs"` ForwarderArn *string `field:"optional" json:"forwarderArn" yaml:"forwarderArn"` GrantSecretReadAccess *bool `field:"optional" json:"grantSecretReadAccess" yaml:"grantSecretReadAccess"` InjectLogContext *bool `field:"optional" json:"injectLogContext" yaml:"injectLogContext"` JavaLayerVersion *float64 `field:"optional" json:"javaLayerVersion" yaml:"javaLayerVersion"` LogLevel *string `field:"optional" json:"logLevel" yaml:"logLevel"` MinColdStartTraceDuration *float64 `field:"optional" json:"minColdStartTraceDuration" yaml:"minColdStartTraceDuration"` NodeLayerVersion *float64 `field:"optional" json:"nodeLayerVersion" yaml:"nodeLayerVersion"` PythonLayerVersion *float64 `field:"optional" json:"pythonLayerVersion" yaml:"pythonLayerVersion"` RedirectHandler *bool `field:"optional" json:"redirectHandler" yaml:"redirectHandler"` Service *string `field:"optional" json:"service" yaml:"service"` Site *string `field:"optional" json:"site" yaml:"site"` SourceCodeIntegration *bool `field:"optional" json:"sourceCodeIntegration" yaml:"sourceCodeIntegration"` Tags *string `field:"optional" json:"tags" yaml:"tags"` UseLayersFromAccount *string `field:"optional" json:"useLayersFromAccount" yaml:"useLayersFromAccount"` Version *string `field:"optional" json:"version" yaml:"version"` }
For backward compatibility.
It's recommended to use DatadogLambdaProps for users who want to add Datadog monitoring for Lambda functions.
type DatadogStepFunctions ¶ added in v1.19.0
type DatadogStepFunctions interface { constructs.Construct // The tree node. Node() constructs.Node Props() *DatadogStepFunctionsProps SetProps(val *DatadogStepFunctionsProps) Scope() constructs.Construct SetScope(val constructs.Construct) Stack() awscdk.Stack SetStack(val awscdk.Stack) AddStateMachines(stateMachines *[]awsstepfunctions.StateMachine, construct constructs.Construct) // Returns a string representation of this construct. ToString() *string }
func NewDatadogStepFunctions ¶ added in v1.19.0
func NewDatadogStepFunctions(scope constructs.Construct, id *string, props *DatadogStepFunctionsProps) DatadogStepFunctions
type DatadogStepFunctionsProps ¶ added in v1.19.0
type DatadogStepFunctionsProps struct { Env *string `field:"optional" json:"env" yaml:"env"` ForwarderArn *string `field:"optional" json:"forwarderArn" yaml:"forwarderArn"` Service *string `field:"optional" json:"service" yaml:"service"` Tags *string `field:"optional" json:"tags" yaml:"tags"` Version *string `field:"optional" json:"version" yaml:"version"` }
type DatadogStrictProps ¶
type DatadogStrictProps struct { AddLayers *bool `field:"required" json:"addLayers" yaml:"addLayers"` CaptureLambdaPayload *bool `field:"required" json:"captureLambdaPayload" yaml:"captureLambdaPayload"` EnableDatadogASM *bool `field:"required" json:"enableDatadogASM" yaml:"enableDatadogASM"` EnableDatadogLogs *bool `field:"required" json:"enableDatadogLogs" yaml:"enableDatadogLogs"` EnableDatadogTracing *bool `field:"required" json:"enableDatadogTracing" yaml:"enableDatadogTracing"` EnableMergeXrayTraces *bool `field:"required" json:"enableMergeXrayTraces" yaml:"enableMergeXrayTraces"` GrantSecretReadAccess *bool `field:"required" json:"grantSecretReadAccess" yaml:"grantSecretReadAccess"` InjectLogContext *bool `field:"required" json:"injectLogContext" yaml:"injectLogContext"` ApiKey *string `field:"optional" json:"apiKey" yaml:"apiKey"` ApiKeySecret awssecretsmanager.ISecret `field:"optional" json:"apiKeySecret" yaml:"apiKeySecret"` ApiKeySecretArn *string `field:"optional" json:"apiKeySecretArn" yaml:"apiKeySecretArn"` ApiKmsKey *string `field:"optional" json:"apiKmsKey" yaml:"apiKmsKey"` ExtensionLayerVersion *float64 `field:"optional" json:"extensionLayerVersion" yaml:"extensionLayerVersion"` FlushMetricsToLogs *bool `field:"optional" json:"flushMetricsToLogs" yaml:"flushMetricsToLogs"` ForwarderArn *string `field:"optional" json:"forwarderArn" yaml:"forwarderArn"` JavaLayerVersion *float64 `field:"optional" json:"javaLayerVersion" yaml:"javaLayerVersion"` LogLevel *string `field:"optional" json:"logLevel" yaml:"logLevel"` NodeLayerVersion *float64 `field:"optional" json:"nodeLayerVersion" yaml:"nodeLayerVersion"` PythonLayerVersion *float64 `field:"optional" json:"pythonLayerVersion" yaml:"pythonLayerVersion"` RedirectHandler *bool `field:"optional" json:"redirectHandler" yaml:"redirectHandler"` Site *string `field:"optional" json:"site" yaml:"site"` SourceCodeIntegration *bool `field:"optional" json:"sourceCodeIntegration" yaml:"sourceCodeIntegration"` }
For backward compatibility.
It's recommended to use DatadogLambdaStrictProps for users who want to add Datadog monitoring for Lambda functions.
type Node ¶
type Node struct {
DefaultChild interface{} `field:"required" json:"defaultChild" yaml:"defaultChild"`
}
type RuntimeType ¶
type RuntimeType string
const ( RuntimeType_DOTNET RuntimeType = "DOTNET" RuntimeType_NODE RuntimeType = "NODE" RuntimeType_PYTHON RuntimeType = "PYTHON" RuntimeType_JAVA RuntimeType = "JAVA" RuntimeType_CUSTOM RuntimeType = "CUSTOM" RuntimeType_UNSUPPORTED RuntimeType = "UNSUPPORTED" )
type Transport ¶
type Transport interface { ApiKey() *string SetApiKey(val *string) ApiKeySecretArn() *string SetApiKeySecretArn(val *string) ApiKmsKey() *string SetApiKmsKey(val *string) ExtensionLayerVersion() *float64 SetExtensionLayerVersion(val *float64) FlushMetricsToLogs() *bool SetFlushMetricsToLogs(val *bool) Site() *string SetSite(val *string) ApplyEnvVars(lambdas *[]awslambda.Function) }
Source Files ¶
- Datadog.go
- DatadogLambda.go
- DatadogLambdaProps.go
- DatadogLambdaStrictProps.go
- DatadogLambda__checks.go
- DatadogProps.go
- DatadogStepFunctions.go
- DatadogStepFunctionsProps.go
- DatadogStepFunctions__checks.go
- DatadogStrictProps.go
- Datadog__checks.go
- Node.go
- Runtime.go
- RuntimeType.go
- TagKeys.go
- Transport.go
- Transport__checks.go
- main.go