可观测学堂

可观测问答

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

Python 中如何获取列表的最后一个元素? cover
概念指南

Python 中如何获取列表的最后一个元素?

Python 获取列表最后一个元素用负索引 my_list[-1],最简洁。注意空列表会抛 IndexError,可用切片 my_list[-1:] 或先判断。

Python 中如何获取列表的长度(元素个数)? cover
概念指南

Python 中如何获取列表的长度(元素个数)?

获取 Python 列表长度用内置函数 len()。本文介绍 len 的用法、复杂度及在其他数据类型上的应用。

Python 中如何截取字符串的子串? cover
概念指南

Python 中如何截取字符串的子串?

Python 截取子串用切片语法 s[start:end],支持负索引和步长。本文介绍切片的各种用法、常见示例及注意事项。

Python 中如何测量程序(或代码段)的执行时间? cover
概念指南

Python 中如何测量程序(或代码段)的执行时间?

测量 Python 代码执行时间:time.perf_counter() 最适合精确计时,time.time() 简单通用,timeit 模块适合小段代码的基准测试。

Logstash 如何同时处理多个不同来源的输入? cover
概念指南

Logstash 如何同时处理多个不同来源的输入?

Logstash 处理多种异构输入的方法:给每个 input 打 type 标签,filter 和 output 阶段用 if [type] == 条件分别处理。本文给出完整配置示例。

Logstash 中 grok 模式匹配失败时如何处理? cover
概念指南

Logstash 中 grok 模式匹配失败时如何处理?

Logstash grok 匹配失败会打上 _grokparsefailure 标签。应对策略:配置多个备选模式、用条件判断处理失败事件、tag_on_failure 自定义标签或禁用。

Python 中如何根据名字(或路径)动态导入模块? cover
概念指南

Python 中如何根据名字(或路径)动态导入模块?

Python 动态导入模块用 importlib.import_module("模块名");按文件路径导入用 importlib.util.spec_from_file_location。本文介绍各种动态导入方式。

Python 中如何用 for 循环遍历字典? cover
概念指南

Python 中如何用 for 循环遍历字典?

Python 遍历字典的三种方式:直接遍历(得到键)、.items() 同时取键值(最常用)、.values() 只取值。Python 3.7+ 保持插入顺序。

Docker 守护进程(dockerd)的日志在哪里查看? cover
概念指南

Docker 守护进程(dockerd)的日志在哪里查看?

Docker 守护进程日志位置因系统而异:systemd 系统用 journalctl -u docker.service;非 systemd 查看 /var/log/docker.log 或 /var/log/messages。

MongoDB 如何记录所有查询或慢查询日志? cover
概念指南

MongoDB 如何记录所有查询或慢查询日志?

MongoDB 通过 profiler 记录慢查询:mongod.conf 中配置 operationProfiling mode 为 slowOp(记慢查询)或 all(记全部),slowOpThresholdMs 设阈值。

MySQL 如何记录所有查询或慢查询日志? cover
概念指南

MySQL 如何记录所有查询或慢查询日志?

MySQL 开启慢查询日志:slow_query_log=1 + long_query_time 设阈值;general_log=1 记录所有查询(生产慎用)。本文给出配置方法和分析工具。

PostgreSQL 如何记录所有查询或慢查询日志? cover
概念指南

PostgreSQL 如何记录所有查询或慢查询日志?

PostgreSQL 记录慢查询:log_min_duration_statement 设置阈值(毫秒);log_statement = 'all' 记录所有 SQL(生产慎用)。本文给出配置方法和分析工具。