- 首页 >
- 问答 >
-
智能运维 >
- Jellyfin在Ubuntu上的日志如何查看与分析
Jellyfin在Ubuntu上的日志如何查看与分析
小樊
44
2025-12-26 17:25:11
Jellyfin在Ubuntu上的日志查看与分析
一、日志位置与获取方式
- 使用 systemd 服务运行(常见 APT 安装)
- 服务日志:journalctl -u jellyfin.service -f(实时查看),或 journalctl -u jellyfin.service --since “2025-12-26 00:00:00” 按时间筛选。
- 控制台输出:若服务配置了标准输出日志,可用 journalctl -u jellyfin.service -o cat 查看纯净输出。
- 直接读取应用日志文件
- 常见路径:/var/log/jellyfin/(如 server.log、ffmpeg-.txt、log_.txt)。查看示例:tail -f /var/log/jellyfin/server.log。
- Docker 部署
- 容器日志:docker logs -f <容器名或ID>;如需查看宿主机上被重定向的日志文件,进入容器内检查 /config 或挂载目录。
- 系统级日志补充
- 若 Jellyfin 输出到系统日志,可在 /var/log/syslog 中检索,例如:grep -i jellyfin /var/log/syslog。
二、常用查看与分析命令
- 实时跟踪与过滤
- 实时跟踪:tail -f /var/log/jellyfin/server.log
- 关键字过滤:tail -f /var/log/jellyfin/server.log | grep -i “error|warn”
- 高亮与上下文:tail -f /var/log/jellyfin/server.log | grep -i --color=auto -C5 “failed”
- 分页浏览与搜索:在 less 中打开后按 /关键词 搜索,按 F 进入实时跟踪,按 q 退出。
- 时间与数量控制
- 最近 N 行:tail -n 200 /var/log/jellyfin/server.log
- 指定时间范围:journalctl -u jellyfin.service --since “2025-12-25” --until “2025-12-26 12:00:00”
- 最近 100 行:journalctl -u jellyfin.service -n 100 -f
- 压缩日志与历史归档
- 轮转后压缩的旧日志可用 zgrep/zcat 检索,例如:zgrep -i “error” /var/log/jellyfin/server.log.1.gz。
- 多关键字与统计
- 多词匹配:grep -E “error|failed|timeout” /var/log/jellyfin/server.log
- 错误计数:grep -i “error” /var/log/jellyfin/server.log | wc -l
- 按时间排序(若日志含可排序时间字段):sort -k1,2 /var/log/jellyfin/server.log | less。
三、典型排查场景与命令示例
- 服务无法启动或崩溃
- 查看启动与异常:journalctl -u jellyfin.service -b(本次启动)、-xe(详细错误)、或 –since “10 minutes ago”。
- 媒体库刮削失败
- 跟踪刮削相关日志:tail -f /var/log/jellyfin/server.log | grep -i “MetadataService|Scraping|Failed”
- 识别 HTTP 状态:… | grep -E “403|404|429”(常见于 API 限流或网络受限)
- 网络连通性自检:curl -v https://api.themoviedb.org/3/configuration(替换为你的 API Key 测试)。
- 转码/播放异常
- 查看 FFmpeg 日志:tail -f /var/log/jellyfin/ffmpeg-*.txt,关注解码器、码率、分辨率与超时信息。
- 权限或路径问题
- 系统日志检索:grep -i “jellyfin” /var/log/syslog,排查权限拒绝、挂载失败等系统级错误。
- Docker 场景
- 容器日志与事件:docker logs -f <容器名>;若日志写入卷,进入容器检查 /config 或挂载目录中的 server.log。
四、日志轮转与长期分析
- 日志轮转
- Ubuntu 默认通过 logrotate 管理日志轮转,配置位于 /etc/logrotate.conf 与 /etc/logrotate.d/。可检查并为 Jellyfin 配置轮转周期、保留份数与压缩策略,避免日志无限增长。
- 长期分析与告警
- 日报/周报:sudo apt install logwatch;生成报告:sudo logwatch --detail high --mailto you@example.com --range today。
- 实时监控告警:sudo apt install swatch,为关键模式(如 “ERROR”)配置邮件或脚本告警。