github.com/aavshr/aws-sdk-go@v1.41.3/aws/corehandlers/user_agent.go (about)

     1  package corehandlers
     2  
     3  import (
     4  	"os"
     5  	"runtime"
     6  
     7  	"github.com/aavshr/aws-sdk-go/aws"
     8  	"github.com/aavshr/aws-sdk-go/aws/request"
     9  )
    10  
    11  // SDKVersionUserAgentHandler is a request handler for adding the SDK Version
    12  // to the user agent.
    13  var SDKVersionUserAgentHandler = request.NamedHandler{
    14  	Name: "core.SDKVersionUserAgentHandler",
    15  	Fn: request.MakeAddToUserAgentHandler(aws.SDKName, aws.SDKVersion,
    16  		runtime.Version(), runtime.GOOS, runtime.GOARCH),
    17  }
    18  
    19  const execEnvVar = `AWS_EXECUTION_ENV`
    20  const execEnvUAKey = `exec-env`
    21  
    22  // AddHostExecEnvUserAgentHander is a request handler appending the SDK's
    23  // execution environment to the user agent.
    24  //
    25  // If the environment variable AWS_EXECUTION_ENV is set, its value will be
    26  // appended to the user agent string.
    27  var AddHostExecEnvUserAgentHander = request.NamedHandler{
    28  	Name: "core.AddHostExecEnvUserAgentHander",
    29  	Fn: func(r *request.Request) {
    30  		v := os.Getenv(execEnvVar)
    31  		if len(v) == 0 {
    32  			return
    33  		}
    34  
    35  		request.AddToUserAgent(r, execEnvUAKey+"/"+v)
    36  	},
    37  }