ubuntu

Ubuntu Node.js日志记录哪些重要事件

小樊
43
2025-12-25 17:42:35
栏目: 编程语言

Ubuntu Node.js 日志应覆盖的关键事件

为确保可观测性与可运维性,建议将日志重点覆盖以下事件类别,并在每条日志中尽量包含时间戳、日志级别、消息、堆栈/请求上下文等关键字段,便于检索与告警。

一、核心事件清单

事件类别 典型场景 建议记录字段 日志级别
应用生命周期 启动、就绪、优雅关闭、重启 pid、版本、端口、启动参数、信号(SIGTERM/SIGINT)、停机耗时 info
HTTP 访问与性能 请求到达、响应返回、耗时、状态码 method、url、status、user-agent、referer、remote-ip、响应时间、content-length、request-id info(4xx/5xx 可提升为 warn/error
未捕获异常 uncaughtException 同步异常未捕获 error、堆栈、type、time、pid fatal(记录后建议安全退出)
未处理 Promise 拒绝 unhandledRejection Promise 无 .catch() reason、堆栈、promise error
Node.js 运行时警告 DeprecationWarning、MaxListenersExceededWarning 等 warning 类型、模块、堆栈、触发位置 warn
资源与性能瓶颈 内存逼近上限、GC 频繁、事件循环延迟高 heapUsed、rss、external、gc 统计、loop delay、采样点 warn/error(阈值触发)
数据库与缓存 连接失败/超时、查询慢、断连重连 db/redis 类型、host、port、错误码、耗时、sql/key、重试次数 error/warn
外部依赖与消息队列 HTTP 调用失败、第三方 API 异常、MQ 生产/消费失败 url/队列、状态码/错误码、时延、重试、trace-id error/warn
身份认证与授权 登录成功/失败、令牌无效/过期、权限不足 user-id/用户名、ip、ua、路径、结果、原因 info/warn/error
安全与审计 暴力登录、可疑输入、权限变更、配置变更 事件类型、来源 ip、账号、时间、变更前后快照 warn/error
配置与启动问题 环境变量缺失、配置校验失败、端口被占用 缺失项、期望值、实际值、端口占用详情 error
定时任务与后台作业 任务开始/结束、失败重试、超时 任务名、开始/结束时间、耗时、结果、错误 info/error

二、日志级别与保留策略

三、在 Ubuntu 上的落地与查看方式

四、关键事件的最小落地示例

0
看了该问题的人还看了