# The default LAL script to save all logs, behaving like the versions before 8.5.0. rules: - name: default layer: GENERAL dsl: | filter { text { abortOnFailure false regexp "(?<timestamp>\\d{8}) (?<traceId>\\w+) (?<thread>\\w+) (?<level>\\w+) (?<msg>.+)" }
extractor { tag level: parsed.level timestamp parsed.time as String, "yyyy-MM-dd HH:mm:ss.SSS" if (tag("level") == "ERROR") { metrics { timestamp log.timestamp as Long labels level: parsed.level, service: parsed.service, instance: parsed.instance name "log_exception_count" value 1 } } } sink { } }
service_error_log_rule: expression: sum(service_log_count >5 ) >= 1 period: 2 message: service {name} Error Level number over 5 in 1 minutes of last 2 minutes