知识卡片
日志即事件流
内容
云原生应用不负责日志的路由和存储,只需要把日志当作按时间排序的事件序列输出到标准输出,日志的收集、归档、轮转都交给外部的日志聚合工具去做。这意味着应用代码里不该出现”写日志文件到某个路径”“按大小切割日志文件”这类逻辑——一旦这样做,应用就和它的运行环境(文件系统布局、磁盘容量)绑死了,也很难适配容器”用完即焚”的特性。发散:这条原则和[[可观测性的四支柱]]里的日志聚合分析是同一件事的两面——应用只管产出事件流,把”怎么收集、存哪、怎么查”完全下放给平台,职责边界划得很干净。
参考来源
《Cloud Native Spring in Action》第2章《Cloud native patterns and technologies》