惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

SecWiki News
SecWiki News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
V
Visual Studio Blog
博客园 - 叶小钗
S
SegmentFault 最新的问题
IT之家
IT之家
大猫的无限游戏
大猫的无限游戏
博客园_首页
Apple Machine Learning Research
Apple Machine Learning Research
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
月光博客
月光博客
酷 壳 – CoolShell
酷 壳 – CoolShell
腾讯CDC
D
Darknet – Hacking Tools, Hacker News & Cyber Security
V
V2EX
阮一峰的网络日志
阮一峰的网络日志
L
Lohrmann on Cybersecurity
量子位
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tor Project blog
J
Java Code Geeks
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
博客园 - 三生石上(FineUI控件)
Attack and Defense Labs
Attack and Defense Labs
AI
AI
The Cloudflare Blog
T
Tailwind CSS Blog
S
Schneier on Security
爱范儿
爱范儿
PCI Perspectives
PCI Perspectives
Stack Overflow Blog
Stack Overflow Blog
S
Secure Thoughts
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
T
The Exploit Database - CXSecurity.com
博客园 - 【当耐特】
V2EX - 技术
V2EX - 技术
S
Securelist
P
Proofpoint News Feed
T
Threat Research - Cisco Blogs
Help Net Security
Help Net Security
C
Cisco Blogs
N
News and Events Feed by Topic
人人都是产品经理
人人都是产品经理
B
Blog RSS Feed
K
Kaspersky official blog
T
The Blog of Author Tim Ferriss
G
Google Developers Blog
S
Security Affairs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Simon Willison's Weblog
Simon Willison's Weblog

est の 输入 输出和出入

gitweets改版,复刻微信「朋友圈」 MiMoCode 干完活儿发通知 写作能力和 locate cost grep vs sqlite 谁更适合微信聊天记录? [AI] curl -NT. 导致100% CPU原因 或许「数羊」真是个有效的入睡法 唯物主义「天命」论 我的 Vibe Coding 最佳实践——ADR文档 MacOS 快速插入当前时间 locate cost 基于 git 的零拷贝静态web服务器 AI和柜台费 Sutton 论 discovery Elon Musk 五步工作法 Playlet:DLNA听歌神器 免安装app播放NAS里的歌 不修改nginx接收websocket AI 硬伤 理解LLM的范式——它就是个差分机? 路径依赖 AI 流式接口的pattern FSRS核心字段 SVG 时钟 AI的自我觉醒是必然 唐宋之变 Louis Alexander 谈英语学习 Predict Next Word Instruct 的意义 浏览器通过WebGPU上做AI推理 Indent Is All You Need 语文学习和考试 失落的学习兴趣 如何跟孩子讲学习的意义 物权 Bonsai 在 M2 安装 The Porsche Diffusion 首页和404更新 无用之用——或许LLM真的还不是AGI 发明后训练的人真是天才 看好 Taalas 码奸 claw会代替员工? 如果拿 token 抵工资会发生什么? tmux enables AIs to operate servers safely chat.est.im launches at 3.14 2026 股灾? AI 弑父 Configurable Intelligence 巴别塔,Vibe Coding和Lisp之咒 Citrini的2028智力危机 中文不是唯一的意译语言 观星有感 体细胞阶级论——当繁衍权被剥夺
Sentry 替代品 Bugsink 安装配置
est · 2026-05-06 · via est の 输入 输出和出入

如果你像我一样需要一个线上异常 traceback 跟踪工具,又没法忍受 Kafka/ClickHouse/Snuba/Zookeeper 这一坨依赖,那么归根结底有三个选择

  1. sentry<10.0 大概是2019年之前的版本,只依赖db/redis,太老
  2. glitchtip 除了错误跟踪也支持 uptime 等
  3. bugsink。不支持 Android/Java 的在线符号化(无 mapping 上传)

最后选了 bugsink 。记录一下 pip 安装部署的坑

下面的配置指 bugsink-create-conf 命令生成的 bugsink_conf.py

避免安装 MySQLdb

docker编译环境一坨,改纯py的 pymysql 代替,在配置顶部写

import pymysql; pymysql.install_as_MySQLdb()

CSRF

前面有一层 nginx 反代,然后一直报 CSRF 错误,因为 X-Forwarded-Proto 没值,所以 django csrf middleware 当成http给拦了。修改方法是配置里加一行

SECURE_PROXY_SSL_HEADER = ("HTTP_ORIGIN", BUGSINK['BASE_URL'])

厂家遥测

配置里 PHONEHOME = False

如果不这样干,我记得会启动报错。需要

from django.apps import apps
Installation = apps.get_model("phonehome", "Installation")
Installation.objects.create()

绕过 migration 建表

手上没pg,django高版本居然限制死了 mysql > 8.0 无语。

直接配置里加两句

from django.db.backends.mysql.features import DatabaseFeatures
DatabaseFeatures.minimum_database_version = None

实测 bugsink跑在mysql 5.6 完全ok,没用到任何高版本特性。纯纯是 django框架在作妖,懒得支持 EOF

跳过 migration

我执行 bugsink-manage migrate 发现mysql 5.6 太老了。于是想办法直接建表而不是一步一步migrate。获得所有建表语句是:

import os
import django

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "bugsink_conf")
django.setup()

from django.apps import apps
from django.db import connection

with connection.schema_editor(collect_sql=True) as editor:
    for model in apps.get_models():
        editor.create_model(model)

print("\n".join(editor.collected_sql))

打印出来比较乱,建议让AI重新整理一版,让 CONSTRAINT,FOREIGN KEY 都写到一起。更加方便一次性生效

吐槽下 django 这种 migration 真是不方便。明明新系统直接一次性建表就行。

建表之后要登记一下 migration 完毕 python manage.py migrate --fake-initial

日期格式

本来想配置里加

DATETIME_FORMAT = "c"   # ISO 8601
DATE_FORMAT = "Y-m-d"
TIME_FORMAT = "H:i:s"

不过发现bugsink代码里日期格式是写死的。改起来太麻烦,作罢