VictoriaLogs 简介
VictoriaLogs 是一款基于 VictoriaMetrics 的高性能日志存储与查询工具,专为处理大规模服务器日志设计,具备快速写入、高效压缩和实时查询能力。
安装与配置
下载最新版本 VictoriaLogs 并解压至目标目录。默认配置文件 victorialogs.yml 包含基础参数,需根据实际需求调整存储路径、监听端口等选项。
启动服务:
./victorialogs -config=path/to/victorialogs.yml
日志存储
通过 HTTP API 或客户端库将日志发送至 VictoriaLogs。以下是使用 curl 发送日志的示例:
curl -X POST http://localhost:9090/api/v1/logs -d '
{
"streams": [
{
"labels": { "job": "nginx", "level": "error" },
"entries": [
{ "ts": "2023-01-01T12:00:00Z", "line": "Connection refused" }
]
}
]
}'
标签(labels)用于后续查询筛选,每条日志需包含时间戳(ts)和内容(line)。
查询日志
VictoriaLogs 提供 LogQL 查询语言,支持多条件过滤与聚合。查询语法示例:
{job="nginx", level="error"} | line =~ "timeout"
通过 HTTP API 执行查询:
curl -G http://localhost:9090/api/v1/query –data-urlencode 'query={job="nginx"}'
响应为 JSON 格式的日志条目列表。
性能优化
- 批量写入:减少 HTTP 请求次数,建议单次发送多条日志。
- 合理使用标签:避免过高基数(如用户 ID 作为标签),优先用于稳定维度(如服务名、环境)。
- 压缩存储:默认启用 ZSTD 压缩,可通过配置调整压缩级别。
监控与维护
集成 Prometheus 监控指标,关注 ingested_logs_total(写入量)、query_duration_seconds(查询延迟)等关键指标。定期清理过期数据:
curl -X POST http://localhost:9090/api/v1/admin/tsdb/delete_series -d 'match[]={__retention__="30d"}'
此命令删除 30 天前的日志数据。
网硕互联帮助中心


评论前必须登录!
注册