日志分析强调高效、准确地从海量文本中提取关键信息。正则表达式凭借灵活性与高性能,成为 ELK、Splunk 等平台的核心工具之一。
典型日志格式
- 单行应用日志:包含时间戳、级别、线程、消息。
- 访问日志:如 Nginx、Apache,使用固定模式记录请求详情。
- 多行异常栈:需要结合正则与分隔符识别完整事件。
Nginx 访问日志拆分
^"?(?<ip>\d+\.\d+\.\d+\.\d+)"?\s-\s-\s\[(?<time>[^\]]+)\]\s"(?<method>\w+)\s(?<path>[^\s]+)\sHTTP/(?<version>\d\.\d)"\s(?<status>\d{3})\s(?<size>\d+)
2000/1/17大约 2 分钟