github.com/aporeto-inc/trireme-lib@v10.358.0+incompatible/controller/pkg/env/parameters.go (about)

     1  package env
     2  
     3  import (
     4  	"os"
     5  	"strconv"
     6  
     7  	"go.aporeto.io/enforcerd/trireme-lib/controller/constants"
     8  	"go.aporeto.io/enforcerd/trireme-lib/controller/pkg/claimsheader"
     9  )
    10  
    11  // RemoteParameters holds all configuration objects that must be passed
    12  // during the initialization of the monitor.
    13  type RemoteParameters struct {
    14  	LogWithID      bool
    15  	LogLevel       string
    16  	LogFormat      string
    17  	CompressedTags claimsheader.CompressionType
    18  }
    19  
    20  // GetParameters retrieves log parameters for Remote Enforcer.
    21  func GetParameters() (string, string, string, claimsheader.CompressionType, int) {
    22  
    23  	var logID, logLevel, logFormat string
    24  	var compressedTagsVersion claimsheader.CompressionType
    25  	var numQueues int
    26  
    27  	logLevel = os.Getenv(constants.EnvLogLevel)
    28  	if logLevel == "" {
    29  		logLevel = "info"
    30  	}
    31  	logFormat = os.Getenv(constants.EnvLogFormat)
    32  	if logLevel == "" {
    33  		logFormat = "json"
    34  	}
    35  
    36  	logID = os.Getenv(constants.EnvLogID)
    37  	compressedTagsVersion = claimsheader.CompressionTypeV1
    38  
    39  	if num, err := strconv.Atoi(os.Getenv(constants.EnvEnforcerdNFQueues)); err == nil {
    40  		numQueues = num
    41  	} else {
    42  		numQueues = 4
    43  	}
    44  
    45  	return logID, logLevel, logFormat, compressedTagsVersion, numQueues
    46  }