Anduin Xue
Anduin Xue

Anduin's Tech Blog

All Posts in 2025.7


使用 Clickhouse 来可视化 Caddy 产生的日志

本文介绍了通过Python脚本采集Caddy日志并导入ClickHouse的完整流程,日志经正则解析后通过Kafka/RabbitMQ传输至ClickHouse的MergeTree表结构,包含时间戳、客户端IP、请求方法、状态码等核心字段,最终通过Superset实现访问趋势、错误率统计、客户端分布等可视化分析,系统支持实时处理3.24万条/秒数据量,内存峰值控制在1008KiB,采用列式存储优化查询性能并支持交互式报表生成。--Qwen3

Caddy CaddyV2 Python Docker Clickhouse Superset

我家里搭建了 Authentik,我非常后悔我搭晚了。

文章系统梳理了通过Authentik统一认证中心为多个应用接入OIDC的完整实践过程。重点展示了Koel通过Caddy Forward Auth实现Header透传认证、Nextcloud基于Property Mapping实现用户ID映射、GitLab利用OpenID Connect配置管理员分组等典型方案。所有应用均采用不同协议(OIDC/Forward Auth)实现单点登录,通过属性映射同步用户信息与权限,其中Nextcloud需特殊处理用户ID与配额属性,GitLab通过groups_attribute字段实现权限继承。用户管理方面存在手工合并用户带来的复杂度问题,尤其当用户在不同平台使用不同Email/Username注册时需逐一核对。早期业务阶段推荐快速部署Authentik以实现认证统一,但用户量超过200后需应对大量用户合并的挑战。整体方案优势在于消除重复注册痛点,实现应用生态的无缝衔接,但需权衡人工操作成本与规模化扩展难度。--Qwen3

Linux OAuth Docker Authentik OIDC OAuth 2.0