Link

zlog-collector

Zebrium log collector for Kubernetes.

Version: 1.56.0 AppVersion: 1.50.0

Installing the Chart

To install the chart with the release name zebrium:

$ helm repo add zebrium http://charts.zebrium.com
$ helm upgrade -i zlog-collector zebrium/zlog-collector --namespace zebrium --create-namespace --set zebrium.collectorUrl=YOUR_ZE_API_URL,zebrium.authToken=YOUR_ZE_API_AUTH_TOKEN,zebrium.deployment=YOUR_DEPLOYMENT_NAME,zebrium.timezone=KUBERNETES_HOST_TIMEZONE

KUBERNETES_HOST_TIMEZONE is the timezone setting on kubernetes host, for example, “UTC” or “America/Los_Angeles”. If this option is not provided, default value UTC will be used.

Uninstalling

To uninstall the chart with the release name zebrium:

helm delete zlog-collector -n zebrium

Additional Information

Log Path Mapping

Log path mapping is the process of detecting semantic items in log file paths (ids, configs and tags) then including them in the Zebrium log data. This is enabled by providing a JSON mapping file to the log collector, as described in the repo at https://www.github.com/zebrium/ze-fluentd-plugin. To use this functionality with the supplied helm chart a customValues.yaml file should be completed and supplied to the helm install command line with:

helm install ... -f customValues.yaml ...

A prototype example_logPathMappings.yaml file is provided in the repo under the example directory, with format:

overridePMFConfig: true
zebrium:
  pathMapFile: "pathMapFile.json"
customPMFConfig: {
"mappings": {
  "patterns":["/var/log/remote_logs/(?<host>[^/]+)/.*"],
    "tags": [],
    "ids" : [
    "host"],
    "configs": []
  }
}

Custom Namespace to Service Group Mapping

Custom Namespace to Service Group Matching is the process of dynamically assigning a service group to a log stream based on the resources namesapce. This is enabled by providing a JSON mapping file to the log collector. To use this functionality with the supplied helm chart a customValues.yaml file should be completed and supplied to the helm install command line with:

helm install ... -f customValues.yaml ...

A prototype example_ns_svcgrp.yaml file is provided in the repo under the example directory, with format:

overrideSVCGRPConfig: true
zebrium:
  svcgrpMapFile: "svcgrpMapFile.json"
customSVCGRPConfig: {
  "mynamespace1" : "svcgrp1",
  "mynamespace2" : "svcgrp1",
  "mynamespace3" : "svcgrp3"
}

Values

Key Type Default Description    
daemonset.dnsPolicy string "ClusterFirst"      
daemonset.nodeSelector object {}      
daemonset.priorityClassName string ""      
daemonset.tolerateAllTaints bool true      
daemonset.tolerations list [] set ‘daemonset.tolerations[0].operator=Equal,daemonset.tolerations[0].effect=NoSchedule,daemonset.tolerations[0].key=node-role.kubernetes.io/master’    
extraEnv list []      
image.name string "zebrium/zlog-collector"      
image.pullPolicy string "Always"      
image.tag string "latest"      
resources.limits.cpu string "1000m"      
resources.limits.memory string "1Gi"      
resources.requests.cpu string "20m"      
resources.requests.memory string "500Mi"      
ruby.gcHeapOldObjectLimitFactor float 1.2      
secret.enabled bool true      
services.automountServiceAccountToken bool true      
services.automountServiceAccountTokenSupported bool false      
updateStrategy string "OnDelete"      
zebrium.authToken string ""      
zebrium.autoupdate string "1"      
zebrium.bufferChunkLimitRecords int 40000      
zebrium.bufferChunkLimitSize string "8MB"      
zebrium.bufferRetryMaxTimes int 360      
zebrium.bufferRetryTimeout string "1h"      
zebrium.bufferRetryWait string "10s"      
zebrium.bufferTotalLimitSize string "64GB"      
zebrium.clusterName string "" Name of the Kubernetes Cluster that the zlog-collector is deployed into    
zebrium.collectorUrl string ""      
zebrium.deployment string "default"      
zebrium.disableEc2MetaData string "true"      
zebrium.ec2ApiClientTimeoutSecs string "1"      
zebrium.excludeNamespaceRegex string "" Regex String to Exclude Namespaces ex. ^(?!.*( bar foo)) this would exclude all namespaces except foo and bar
zebrium.excludePath string "[\"/var/log/boot.log\",\"/var/log/lastlog\"]"      
zebrium.excludePodRegex string "" Regex String to exclude pods. EX. “^fluentbit.*” would exclude all fluentbit pods from collection    
zebrium.flushInterval string "30s"      
zebrium.flushThreadCount string "4"      
zebrium.handleHostAsConfig bool false      
zebrium.k8sApiSecretName string ""      
zebrium.logFile string ""      
zebrium.logLevel string "info"      
zebrium.name string "zlog-collector"      
zebrium.nodeLogsPath string "/var/log/*.log,/var/log/syslog,/var/log/messages,/var/log/secure"      
zebrium.pathMapFile string ""      
zebrium.svcgrpMapFile string ""      
zebrium.tailFromHead string "true"      
zebrium.timezone string "UTC"      
zebrium.useHostEtcHostnameFile bool false      
zebrium.verifyK8sApiSSL bool true      
zebrium.verifySSL string "true"      

Maintainers

Name Email Url
b3arp braeden@zebrium.com  

Autogenerated from chart metadata using helm-docs v1.10.0