可观测学堂

可观测问答

聚焦概念、架构、排障、价格与选型,一篇解决一个明确问题。

加密网络与通信桥梁插画
技术指南

Cloudflare 报错 526(无效 SSL 证书)怎么解决

526 错误表示 Cloudflare 在 Full (Strict) 模式下无法验证源站证书。解决:给源站装有效证书(或 Cloudflare Origin Certificate),或临时降级为 Full 模式。附源站证书自测命令。

应用程序模块协作插画
技术指南

Node.js 报错 "Can't set headers after they are sent" 怎么解决

该错误表示响应已发送后又试图修改 Header。三大根因:重复调用 res.send()、异步回调里未 return、中间件顺序错误。附典型错误代码对照与排查方法。

应用程序模块协作插画
技术指南

npm 全局安装报 EACCES 权限不足怎么解决

EACCES: permission denied, access '/usr/local/lib/node_modules' 是因为全局目录属 root。正解:用 nvm 管理 Node,或把 npm 全局目录改到 home 下;不要养成 sudo npm 的习惯。

数据整理与查询插画
技术指南

Elasticsearch 报 index_not_found_exception 怎么解决

index_not_found_exception 表示请求的索引不存在。先用 GET _cat/indices?v 确认索引列表,再排查拼写、大小写、索引别名、时间序列索引名(如 logs-2024-09)等问题,必要时创建索引。

应用程序模块协作插画
技术指南

请求体过大(413 Request Entity Too Large)怎么解决

413 表示请求体超过某层限制。先定位应用、代理或 CDN 的拒绝层,再按业务上限协调 JSON、multipart 与总请求体限制,避免无限放宽造成资源耗尽。

数据整理与查询插画
技术指南

如何查看 Elasticsearch 索引有多少个字段

用 _mapping 查看映射,区分顶层属性数量与 total_fields 限额计数。提供递归统计常见字段、multi-fields、别名和 runtime 的示例,并说明字段爆炸治理。

数据整理与查询插画
技术指南

Prometheus 如何统计一段时间内的总请求数

increase(http_requests_total[1h]) 根据采样 Counter 估算一小时请求增量,并对可观测重置作调整。结果可能为小数,不适合精确计费;本文给出聚合与排错方法。

加密网络与通信桥梁插画
技术指南

如何让 Chrome 信任 localhost 的自签名证书

本地 HTTPS 推荐用 mkcert 创建开发 CA 和带 SAN 的证书,再确认 Chrome 信任配置。不同平台信任库行为不同;不要关闭浏览器证书校验,也不要分发 CA 私钥。

加密网络与通信桥梁插画
技术指南

报错 "dial tcp 127.0.0.1:9443: connect: connection refused" 怎么排查

connection refused 表示目标端口没有进程在监听(与超时的"被丢包"不同)。按四步排查:进程是否在跑、监听端口对不对、防火墙是否拦截、URL 是否写错。附 Prometheus metrics 抓取场景的具体修法。

版本分支与历史整合插画
技术指南

Git 如何只重置单个文件(hard reset)

用 git restore --source=HEAD --staged --worktree -- 文件 同时重置单文件的暂存区与工作区。操作会覆盖本地改动,先检查差异并备份。

版本分支与历史整合插画
技术指南

Git 中 HEAD^ 与 HEAD~ 有什么区别

HEAD^ 选"第几个父提交"(用于合并提交的多父场景),HEAD~ 表示"向上数第几代"。HEAD~1 与 HEAD^ 等价,但 HEAD^2 是合并提交的第二个父,HEAD~2 是向上两代——含义完全不同。

应用程序模块协作插画
技术指南

如何查看 mailq 队列中邮件的具体内容

用 postcat -q 邮件ID 查看 Postfix 队列中邮件的完整内容;-bh 参数分别显示正文和头部。本文含批量查看所有队列邮件头部的脚本与队列目录说明。