Documentation
¶
Overview ¶
Package lambdacontext provides access to Lambda execution context information.
This package allows Lambda functions to access metadata about the current invocation, including request ID, function ARN, Cognito identity, and client context. Context information is retrieved from the standard Go context.Context using FromContext().
See https://docs.aws.amazon.com/lambda/latest/dg/golang-context.html
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
var FunctionName string
FunctionName the name of the current Lambda Function
var FunctionVersion string
FunctionVersion is the published version of the current instance of the Lambda Function
var LogGroupName string
LogGroupName is the name of the log group that contains the log streams of the current Lambda Function
var LogStreamName string
LogStreamName name of the log stream that the current Lambda Function's logs will be sent to
var MemoryLimitInMB int
MemoryLimitInMB is the configured memory limit for the current instance of the Lambda Function
Functions ¶
func MaxConcurrency ¶ added in v1.51.0
func MaxConcurrency() int
func NewContext ¶
func NewContext(parent context.Context, lc *LambdaContext) context.Context
NewContext returns a new Context that carries value lc.
Types ¶
type ClientApplication ¶
type ClientApplication struct {
InstallationID string `json:"installation_id"`
AppTitle string `json:"app_title"`
AppVersionCode string `json:"app_version_code"`
AppPackageName string `json:"app_package_name"`
}
ClientApplication is metadata about the calling application.
type ClientContext ¶
type ClientContext struct {
Client ClientApplication
Env map[string]string `json:"env"`
Custom map[string]string `json:"custom"`
}
ClientContext is information about the client application passed by the calling application.
type CognitoIdentity ¶
CognitoIdentity is the cognito identity used by the calling application.
type LambdaContext ¶
type LambdaContext struct {
AwsRequestID string //nolint: staticcheck
InvokedFunctionArn string //nolint: staticcheck
Identity CognitoIdentity
ClientContext ClientContext
TenantID string `json:",omitempty"`
}
LambdaContext is the set of metadata that is passed for every Invoke.
func FromContext ¶
func FromContext(ctx context.Context) (*LambdaContext, bool)
FromContext returns the LambdaContext value stored in ctx, if any.
Example ¶
package main
import (
"context"
"log"
"github.com/aws/aws-lambda-go/lambda"
"github.com/aws/aws-lambda-go/lambdacontext"
)
func main() {
lambda.Start(func(ctx context.Context) (string, error) {
lc, _ := lambdacontext.FromContext(ctx)
log.Printf("Request ID: %s", lc.AwsRequestID)
log.Printf("Function ARN: %s", lc.InvokedFunctionArn)
return "success", nil
})
}