server: disable: true positions: filename: /var/opt/promtail/promtail_syslog_position.yaml clients: - url: http://<%= @LOKIENDPOINT %>/loki/api/v1/push scrape_configs: - job_name: syslog static_configs: - targets: - localhost labels: job: syslog __path__: /var/log/vector/*.log pipeline_stages: - json: expressions: appname: hostname: level: severity message: timestamp: - labels: appname: hostname: level: - match: selector: '{job="syslog", level=~"(debug|DEBUG)"}' action: drop - match: selector: '{job="syslog", hostname="esxi-new", appname=~"(storageRM|sdrsInjector)"} |= "getting state for"' action: drop - match: selector: '{job="syslog", hostname="esxi-new", appname="Hostd"} |~ "(->|IpmiIfcOpenIpmiOpen|LikewiseGetDomainJoinInfo|AddVirtualMachine: VM|Solo.HttpSvc.HTTPService|VigorCallback received fault|vim.fault.InvalidPowerState|Unable to get resource settings for a powered on VM|VigorOnlineStatusCb|N7Vmacore16TimeoutExceptionE|Calculated write I/O size)"' action: drop - match: selector: '{job="syslog", hostname="esxi-new", appname="smartd"} |~ "(REALLOCATED SECTOR CT below threshold)"' action: drop - match: selector: '{job="syslog", hostname="esxi-new", appname="backup.sh"} |~ "(esx.conf|Creating archive)"' action: drop - match: selector: '{job="syslog", hostname="esxi-new", appname="Rhttpproxy"} |~ "(warning rhttpproxy|->|last log rotation time)"' action: drop - match: selector: '{job="syslog", hostname="esxi-new", appname="usbarb", level="notice"}' action: drop - match: selector: '{job="syslog", hostname="esxi-new", appname="vmauthd", level="notice"}' action: drop - match: selector: '{job="syslog", hostname="esxi-new"}' stages: - timestamp: source: timestamp format: 2006-01-02T15:04:05.999Z location: Etc/GMT - template: source: level template: '{{ regexReplaceAllLiteral "err" .Value "error" }}' - labeldrop: - appname - output: source: message - match: selector: '{job="syslog", hostname="ubnt", appname="openvpn", level="notice"}' action: drop - match: selector: '{job="syslog", hostname="ubnt", appname="sudo", level="info"}' action: drop - match: selector: '{job="syslog", hostname="ubnt"}' stages: - timestamp: source: timestamp format: 2006-01-02T15:04:05.999Z location: Asia/Bangkok - template: source: level template: '{{ regexReplaceAllLiteral "err" .Value "error" }}' - labels: level: hostname: - labeldrop: - appname - output: source: message - match: selector: '{job="syslog", hostname="ds418"}' stages: - timestamp: source: timestamp format: 2006-01-02T15:04:05.999Z location: Asia/Bangkok - template: source: level template: '{{ regexReplaceAllLiteral "err" .Value "error" }}' - labels: level: hostname: - labeldrop: - appname - output: source: message