6.2 Views 与聚合
6.2 Views 与聚合
Views 的作用
Views 是更灵活的可视化与搜索集合,可以组合搜索、聚合与图表,适合构建复杂分析页面。
常见聚合方式
计数(Count)
平均值(Avg)
最大/最小(Max/Min)
分组(Group by 字段)
示例场景
按服务聚合错误数
按状态码统计比例
按主机展示请求量趋势
建议
使用结构化字段进行分组
保持查询范围合理
复用 Saved Search 作为数据源
小结
Views 适合复杂分析与看板。下一章介绍共享与权限。
下一节:6.3 共享与权限
返回目录 | 返回首页
6.1 Dashboards 入门
6.1 Dashboards 入门
Dashboard 是什么
Dashboard 用于将多个图表组件组合在一起,形成统一视图。适合运维、业务与安全场景的指标展示。
常见组件
计数指标:日志数量、错误数
时间序列:请求量趋势
TopN 列表:错误 Top 服务/主机
饼图/柱状图:比例分布
创建步骤
新建 Dashboard
选择数据源(Saved Search)
添加组件并布局
保存与共享
实战建议
先整理好字段规范
用 Saved Search 复用查询
关注关键业务指标
小结
Dashboard 是可视化的入口。下一章介绍 Views 与聚合。
下一节:6.2 Views 与聚合
返回目录 | 返回首页
5.3 时间范围与过滤
5.3 时间范围与过滤
时间选择器
Graylog 的时间选择器是查询性能的关键:
最近 5 分钟 / 1 小时 / 24 小时
自定义时间范围
相对时间 vs 绝对时间
过滤技巧
使用结构化字段过滤
多条件组合(AND/OR)
先缩小时间范围,再加过滤字段
示例
service:auth AND http_status:401
source:api-01 AND request_time:>2000
小结
合理的时间范围与过滤能显著提升查询速度。下一章进入 Dashboards。
下一节:6.1 Dashboards 入门
返回目录 | 返回首页
5.2 保存搜索
5.2 保存搜索
为什么要保存搜索
保存搜索可以快速复用常用查询,并在仪表盘/视图中引用,避免重复输入。
创建步骤
在 Search 页完成查询条件
点击 Save
设置名称与描述
使用场景
常见故障排查查询
安全审计筛选
性能分析过滤器
小结
保存搜索提升检索效率。下一章介绍时间范围与过滤。
下一节:5.3 时间范围与过滤
返回目录 | 返回首页
5.1 查询语法
5.1 查询语法
基础语法
Graylog 使用 Lucene 风格查询:
字段查询:field:value
短语查询:message:"login failed"
逻辑操作:AND / OR / NOT
时间范围
通过时间选择器设置范围
常用:最近 5 分钟、1 小时、24 小时
常见示例
source:api-01 AND http_status:500
service:order AND request_time:>1000
message:"timeout" OR message:"connection refused"
查询优化建议
优先使用结构化字段
选择合适时间范围
避免全量搜索
小结
本章介绍了查询语法。下一章讲保存搜索。
下一节:5.2 保存搜索
返回目录 | 返回首页
4.4 字段规范化
4.4 字段规范化
为什么要规范化
字段标准化是可检索性与可视化的关键。如果每个团队使用不同字段名,会导致搜索与仪表盘不可复用。
常见规范
IP:client_ip
方法:http_method
路径:request_path
状态码:http_status
耗时:request_time
服务名:service
环境:env
建议策略
建立 字段字典(Field Dictionary)
在 Pipelines 中统一命名
对关键字段设置类型(long/double/string)
示例规则
rule "normalize_http"
when
has_field("method")
then
set_field("http_method", to_string($message.method));
set_field("request_path", to_string($message.path));
end
小结
字段规范化是长期收 ...
4.3 Pipeline 规则实战
4.3 Pipeline 规则实战
目标
通过示例演示如何解析 Nginx 访问日志,并标准化字段。
示例日志
127.0.0.1 - - [16/Feb/2026:10:00:00 +0800] "GET /api/ping HTTP/1.1" 200 12 "-" "curl/7.81.0"
Grok 规则示例
rule "nginx_access_grok"
when
has_field("message")
then
let m = grok("%{IP:client_ip} - - \[%{HTTPDATE:ts}\] \"%{WORD:method} %{URIPATHPARAM:path} HTTP/%{NUMBER:http_version}\" % ...
4.2 Pipelines 概念
4.2 Pipelines 概念
为什么需要 Pipelines
Pipelines 是 Graylog 的规则引擎,适合复杂条件判断、字段清洗与标准化。
相比 Extractors,Pipelines 具备:
可版本管理
规则可复用
逻辑可读性更强
核心概念
Pipeline:包含多个 Stage
Stage:包含多个 Rule
Rule:具体规则逻辑
执行流程
日志进入 Stream
Stream 触发 Pipeline
Pipeline 依次执行 Stage
规则成功则设置字段/路由
示例规则(简化)
rule "add_env"
when
has_field("source")
then
set_field("env", "prod");
end
小结
Pipelines 是生产环境的最佳实践。下一章进入规则实战。
下一节:4.3 Pipeline 规则实战
返回目录 | 返回首页

