业务系统日志存储选型讨论

2023-11-21 23:07:41 +08:00
 steelshadow39

本人学生,最近项目在讨论日志存储的选型,后端是 springboot ,日志格式为 JSON ,组内有人提议使用 MYSQL 存储日志(因为系统体量不是特别大),我选的是 graylog (存储用的是 elasticsearch ,比 ELK 更轻量)。我觉得无论日志量大小,elasticsearch 的检索和日志处理都要比单纯用 MYSQL 强很多,用 MYSQL varchar 存 JSON ,查询出来还要解析,效率也太低了。并且处理日志本来就是 elasticsearch 的强项。

想请教各位前辈,公司开发在日志这块一般是怎么处理的,感谢各位前辈指点。

5397 次点击
所在节点    程序员
72 条回复
Jat001
2023-11-22 21:43:27 +08:00
@Betsy 其实存文件也是企业常用、成熟的方案,哪有这么多高大上的东西啊,又不是不能用🤣
steelshadow39
2023-11-22 22:45:22 +08:00
@Betsy 这样嘛,之前认为日志是非结构数据,所以觉得 MySQL 存不太好。现在学到了,谢谢
Daath
2023-11-22 22:46:53 +08:00
k8s 集群上用了 helm 部署 minio+loki+grafana
TuringHero
2023-11-22 22:58:33 +08:00
Grafana Loki ,如果觉得 Loki 的查询太弱可以看下 openobserve ,比 ELK 还是要省很多资源的
veni2023
2023-11-23 10:45:55 +08:00
能联网的话,直接用阿里云的 sls,费用比加一台机器部署日志系统便宜
xzysaber
2023-11-23 11:00:00 +08:00
Loki 够了,只是需要注意打好 label ,不然就会容易出现 timeout 。
crazyweeds
2023-11-23 13:02:51 +08:00
为什么没人推荐用时序数据库呢?
crazyweeds
2023-11-23 13:10:24 +08:00
@crazyweeds 好像只解决了存储问题,没解决索引问题,好吧。
whp1473
2023-11-23 14:49:56 +08:00
Promtail + loki + grafana + Prometheus
这是比较流行的商业化方案,日志+监控+界面展示+告警都有
whp1473
2023-11-23 14:51:38 +08:00
@whp1473
Promtail:日志采集器
Loki:基于标签的日志存储
Grafana:可以直接连接 Loki 、Prometheus 做可视化
Prometheus:基于标签的监控告警
chlinlearn
2023-11-23 16:12:01 +08:00
简单业务可以试一试这个方案,基于 Nginx+Logstash+Elasticsearch+Syslog 记录请求 accesslog 日志,打造一个排查接口问题、统计流量数据、慢接口优化的开发运维利器。https://mp.weixin.qq.com/s/r-QINvPHoZIEllJKepxh0w
gujinwind
2023-11-25 21:57:52 +08:00
直接使用 mysql 存可以的, 我就见过一个用 MySQL 存大量日志的程序

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/993983

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX