...

Package driverutil

import "go.mongodb.org/mongo-driver/internal/driverutil"
Overview
Index

Overview ▾

Constants

const (

    // EnvVarAWSExecutionEnv is the AWS Execution environment variable.
    EnvVarAWSExecutionEnv = "AWS_EXECUTION_ENV"
    // EnvVarAWSLambdaRuntimeAPI is the AWS Lambda runtime API variable.
    EnvVarAWSLambdaRuntimeAPI = "AWS_LAMBDA_RUNTIME_API"
    // EnvVarFunctionsWorkerRuntime is the functions worker runtime variable.
    EnvVarFunctionsWorkerRuntime = "FUNCTIONS_WORKER_RUNTIME"
    // EnvVarKService is the K Service variable.
    EnvVarKService = "K_SERVICE"
    // EnvVarFunctionName is the function name variable.
    EnvVarFunctionName = "FUNCTION_NAME"
    // EnvVarVercel is the Vercel variable.
    EnvVarVercel = "VERCEL"
    // EnvVarK8s is the K8s variable.
    EnvVarK8s = "KUBERNETES_SERVICE_HOST"
)
const (

    // EnvVarAWSRegion is the AWS region variable.
    EnvVarAWSRegion = "AWS_REGION"
    // EnvVarAWSLambdaFunctionMemorySize is the AWS Lambda function memory size variable.
    EnvVarAWSLambdaFunctionMemorySize = "AWS_LAMBDA_FUNCTION_MEMORY_SIZE"
    // EnvVarFunctionMemoryMB is the function memory in megabytes variable.
    EnvVarFunctionMemoryMB = "FUNCTION_MEMORY_MB"
    // EnvVarFunctionTimeoutSec is the function timeout in seconds variable.
    EnvVarFunctionTimeoutSec = "FUNCTION_TIMEOUT_SEC"
    // EnvVarFunctionRegion is the function region variable.
    EnvVarFunctionRegion = "FUNCTION_REGION"
    // EnvVarVercelRegion is the Vercel region variable.
    EnvVarVercelRegion = "VERCEL_REGION"
)
const (

    // EnvNameAWSLambda is the AWS Lambda environment name.
    EnvNameAWSLambda = "aws.lambda"
    // EnvNameAzureFunc is the Azure Function environment name.
    EnvNameAzureFunc = "azure.func"
    // EnvNameGCPFunc is the Google Cloud Function environment name.
    EnvNameGCPFunc = "gcp.func"
    // EnvNameVercel is the Vercel environment name.
    EnvNameVercel = "vercel"
)

Operation Names should be sourced from the command reference documentation: https://www.mongodb.com/docs/manual/reference/command/

const (
    AbortTransactionOp  = "abortTransaction"  // AbortTransactionOp is the name for aborting a transaction
    AggregateOp         = "aggregate"         // AggregateOp is the name for aggregating
    CommitTransactionOp = "commitTransaction" // CommitTransactionOp is the name for committing a transaction
    CountOp             = "count"             // CountOp is the name for counting
    CreateOp            = "create"            // CreateOp is the name for creating
    CreateIndexesOp     = "createIndexes"     // CreateIndexesOp is the name for creating indexes
    DeleteOp            = "delete"            // DeleteOp is the name for deleting
    DistinctOp          = "distinct"          // DistinctOp is the name for distinct
    DropOp              = "drop"              // DropOp is the name for dropping
    DropDatabaseOp      = "dropDatabase"      // DropDatabaseOp is the name for dropping a database
    DropIndexesOp       = "dropIndexes"       // DropIndexesOp is the name for dropping indexes
    EndSessionsOp       = "endSessions"       // EndSessionsOp is the name for ending sessions
    FindAndModifyOp     = "findAndModify"     // FindAndModifyOp is the name for finding and modifying
    FindOp              = "find"              // FindOp is the name for finding
    InsertOp            = "insert"            // InsertOp is the name for inserting
    ListCollectionsOp   = "listCollections"   // ListCollectionsOp is the name for listing collections
    ListIndexesOp       = "listIndexes"       // ListIndexesOp is the name for listing indexes
    ListDatabasesOp     = "listDatabases"     // ListDatabasesOp is the name for listing databases
    UpdateOp            = "update"            // UpdateOp is the name for updating
)
const AwsLambdaPrefix = "AWS_Lambda_"

func GetFaasEnvName

func GetFaasEnvName() string

GetFaasEnvName parses the FaaS environment variable name and returns the corresponding name used by the client. If none of the variables or variables for multiple names are populated the client.env value MUST be entirely omitted. When variables for multiple "client.env.name" values are present, "vercel" takes precedence over "aws.lambda"; any other combination MUST cause "client.env" to be entirely omitted.