btpanel
BT-Panelというツールを使い、サーバーの資源状況やウェブサイトの状態を監視したり、プログラムの実行状況を確認したり、サーバーへの不正なアクセスがないかをチェックするなど、サーバー運用をサポートするSkill。
📜 元の英語説明(参考)
宝塔面板(BT-Panel)运维监控技能,提供服务器资源监控、网站状态检查、服务状态检查、SSH安全审计、计划任务管理、日志读取等功能
🇯🇵 日本人クリエイター向け解説
BT-Panelというツールを使い、サーバーの資源状況やウェブサイトの状態を監視したり、プログラムの実行状況を確認したり、サーバーへの不正なアクセスがないかをチェックするなど、サーバー運用をサポートするSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o btpanel.zip https://jpskill.com/download/8638.zip && unzip -o btpanel.zip && rm btpanel.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/8638.zip -OutFile "$d\btpanel.zip"; Expand-Archive "$d\btpanel.zip" -DestinationPath $d -Force; ri "$d\btpanel.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
btpanel.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
btpanelフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
宝塔面板运维监控
宝塔パネルサーバーの全方位的な運用監視ツールです。多サーバー管理、リソース監視、ウェブサイト状態チェック、サービス状態チェック、SSHセキュリティー監査、計画タスク管理などの機能をサポートします。
アイコンリソース
技能パッケージは以下のアイコンファイルを提供し、レポート生成時に引用できます。
| ファイル | 形式 | 用途 |
|---|---|---|
icon/bt-logo.svg |
SVG | ベクターアイコン、拡大縮小に適しています |
使用例(レポート生成時):
# サーバー巡回検査報告

## 概要
...
AI 使用制約
本技能はサーバー状態データのクエリと表示に使用され、AIは以下の原則に従う必要があります。
- データ中立性:監視データをありのままに表示し、問題の深刻さを誇張したり縮小したりしない
- 客観的分析:閾値設定に基づいてアラートを出し、主観的な判断を避ける
- データ駆動:提案と結論は実際のデータに基づいて行い、憶測を行わない
- プライバシー保護:サーバーの機密情報(IP、Token、ドメイン名など)を積極的に漏洩しない
- 実行前告知:インターフェースデータが多いため、取得と分析に一定の時間がかかることを考慮し、AIはまずユーザーに実行する操作手順を簡単に説明してから、コマンドを実行してデータを取得する
実行フロー例:
AI: 以下の操作を実行します:
1. サーバーシステムリソース状態(CPU、メモリ、ディスク)を取得
2. ウェブサイトの実行状態をチェック
3. サービスの実行状態をチェック
データ取得中です。しばらくお待ちください...
[実行コマンド]
[結果と分析を表示]
サーバー構成管理
重要: サーバー情報がない場合は追加が必要です
構成ツールを使用してサーバーを管理します。
# ヘルプを表示
python3 {baseDir}/scripts/bt-config.py -h
# サーバーを追加
python3 {baseDir}/scripts/bt-config.py add -n prod-01 -H https://panel.example.com:8888 -t YOUR_TOKEN
# サーバーをリスト表示
python3 {baseDir}/scripts/bt-config.py list
# 閾値を設定
python3 {baseDir}/scripts/bt-config.py threshold --cpu 75 --memory 80
常用シーン
シーン1:初回使用時のサーバー構成
ユーザーが本技能を初めて使用する場合、最初にサーバー接続情報を構成する必要があります。
# サーバーを追加(パネルアドレスとAPI Tokenが必要)
python3 {baseDir}/scripts/bt-config.py add -n prod-01 -H https://panel.example.com:8888 -t YOUR_API_TOKEN
# 構成済みのサーバーを表示
python3 {baseDir}/scripts/bt-config.py list
API Tokenの取得方法:
- 宝塔パネルにログイン
- 「パネル設定」->「APIインターフェース」に進む
- 「API Tokenを取得」をクリック
ユーザー意図認識:
- "宝塔サーバーを構成して" → ユーザーにサーバー構成の追加を促す
- "サーバーを1台追加" →
bt-config.py addを実行 - "どんなサーバーがあるか確認" →
bt-config.py listを実行
シーン2:多サーバーリソースの集計
ユーザーがすべてのサーバーの全体的な実行状態を把握する必要がある場合:
# すべてのサーバーのリソース使用状況を表示
python3 {baseDir}/scripts/monitor.py --format table
# すべてのサーバーのウェブサイト状態の概要を表示
python3 {baseDir}/scripts/sites.py
# すべてのサーバーのサービス状態を表示
python3 {baseDir}/scripts/services.py
ユーザー意図認識:
- "サーバー全体の状況はどうですか" →
monitor.pyを実行 - "すべてのサーバーのヘルス状態" →
monitor.py+sites.pyを実行 - "多サーバーのリソース使用状況" →
monitor.py --format tableを実行
シーン3:単一サーバーの日常巡回検査
ユーザーが単一のサーバーを全面的に検査する必要がある場合:
# サーバー名を指定して各項目を検査
python3 {baseDir}/scripts/monitor.py --server prod-01 --format table
python3 {baseDir}/scripts/sites.py --server prod-01
python3 {baseDir}/scripts/services.py --server prod-01
python3 {baseDir}/scripts/ssh.py --status --server prod-01
python3 {baseDir}/scripts/crontab.py --backup-only --server prod-01
ユーザー意図認識:
- "prod-01 というサーバーを検査" → 上記の検査コマンドを実行
- "日常巡回検査をして" → システム監視、ウェブサイト状態、サービス状態の検査を実行
- "このサーバーに問題はありますか" → 全面検査を実行し、アラートを集計
シーン4:ウェブサイトSSL証明書チェック
ユーザーがSSL証明書が間もなく期限切れになるかどうかを気にしている場合:
# SSLが間もなく期限切れになるウェブサイトを表示
python3 {baseDir}/scripts/sites.py --filter ssl-warning
# SSLが期限切れになったウェブサイトを表示
python3 {baseDir}/scripts/sites.py --filter ssl-expired
ユーザー意図認識:
- "SSL証明書は間もなく期限切れになりますか" →
sites.py --filter ssl-warningを実行 - "どのウェブサイトの証明書が期限切れになりましたか" →
sites.py --filter ssl-expiredを実行
シーン5:セキュリティー監査
ユーザーがセキュリティー検査を行う必要がある場合:
# SSHログイン失敗記録を表示
python3 {baseDir}/scripts/ssh.py --logs --filter failed
# 特定のIPのログイン記録を検索
python3 {baseDir}/scripts/ssh.py --logs --search 192.168.1.100
# SSHサービスの状態を表示
python3 {baseDir}/scripts/ssh.py --status
ユーザー意図認識:
- "異常なログインはありますか" →
ssh.py --logs --filter failedを実行 - "このIPのログイン記録を調べて" →
ssh.py --logs --search IPを実行 - "SSHセキュリティー検査" →
ssh.py --statusとssh.py --logsを実行
シーン6:サービス障害のトラブルシューティング
特定のサービスに問題が発生した場合:
# サービスの状態を表示
python3 {baseDir}/scripts/services.py --server prod-01
# サービスのエラーログを表示
python3 {baseDir}/scripts/logs.py --server prod-01 --service nginx --lines 200
python3 {baseDir}/scripts/logs.py --server prod-01 --service redis
ユーザー意図認識:
- "Nginx/Apache/Redis に問題が発生しました" → サービスの状態を表示 + エラーログを表示
- "サービスでエラーが発生しました。ログを確認してください" →
logs.pyを実行して対応するサービスのログを表示
シーン7:バックアップタスクの検査
ユーザーがバックアップが正常かどうかを気にしている場合:
# すべてのバックアップタスクを表示
python3 {baseDir}/scripts/crontab.py --backup-only
# 特定のバックアップタスクの実行ログを表示
python3 {baseDir}/scripts/crontab.py --logs --task-id 11
ユーザー意図認識:
- "バックアップタスクは正常ですか" →
crontab.py --backup-onlyを実行 - "バックアップログを表示" →
crontab.py --logs --task-id IDを実行
バージョン要件
- 宝塔パネル: >= 9.0.0
- Python: >= 3.10
用法
システムリソース監視
# ヘルプを表示
python3 {baseDir}/scripts/monitor.py -h
# すべてのサーバーを監視
python3 {baseDir}/scripts/monitor.py
# 指定されたサーバーを監視
python3 {baseDir}/scripts/monitor.py --server prod-01
# JSON形式で出力
python3 {baseDir}/scripts/monitor.py --format json
# テーブル形式で出力
python3 {baseDir}/scripts/monitor.py --format table
# ファイルに出力
python3 {baseDir}/scripts/monitor.py --output report.json
ウェブサイト状態チェック
# ヘルプを表示
python3 {baseDir}/scripts/sites.py -h
# すべてのサーバーのウェブサイト状態をチェック
python3 {baseDir}/scripts/sites.py
# 指定されたサーバーをチェック
python3 {baseDir}/scripts/sites.py --server prod-01
# 停止しているウェブサイトのみを表示
python3 {baseDir}/scripts/sites.py --filter stopped
# SSLが間もなく期限切れになるウェブサイトのみを表示(30日以内)
python3 {baseDir}/scripts/sites.py --filter ssl-warning
# SSLが期限切れになったウェブサイトのみを表示
python3 {baseDir}/scripts/sites.py --filter ssl-expired
# JSON形式で出力
python3 {baseDir}/scripts/sites.py --format json
# ファイルに出力
python3 {baseDir}/scripts/sites.py --output sites.json
サービス状態チェック
# ヘルプを表示
python3 {baseDir}/scripts/services.py -h
# すべてのサーバーのサービス状態をチェック
python3 {baseDir}/scripts/services.py
# 指定されたサーバーをチェック
python3 {baseDir}/scripts/services.py --server prod-01
# 特定のサービスのみをチェック
python3 {baseDir}/scripts/services.py --service nginx --service redis
# JSON形式で出力
python3 {baseDir}/scripts/services.py --format json
# ファイルに出力
python3 {baseDir}/scripts/services.py --output services.json
ログ読み取り
# ヘルプを表示
python3 {baseDir}/scripts/logs.py -h
# Nginxのエラーログを表示
python3 {baseDir}/scripts/logs.py --service nginx
# Redisのログを表示
python3 {baseDir}/scripts/logs.py --service redis
# Apacheのエラーログを表示
python3 {baseDir}/scripts/logs.py --service apache
# MySQLのエラーログを表示
python3 {baseDir}/scripts/logs.py --service mysql
# MySQLのスロークエリログを表示
python3 {baseDir}/scripts/logs.py --service mysql --log-type slow
# PostgreSQLのログを表示(プラグインが必要)
python3 {baseDir}/scripts/logs.py --service pgsql
# PostgreSQLのスローログを表示
python3 {baseDir}/scripts/logs.py --service pgsql --log-type slow
# サーバーと行数を指定
python3 {baseDir}/scripts/logs.py --server prod-01 --service nginx --lines 200
# JSON形式で出力
python3 {baseDir}/scripts/logs.py --service nginx --format json
SSH状態とログチェック
# ヘルプを表示
python3 {baseDir}/scripts/ssh.py -h
# SSHサービスの状態を表示
python3 {baseDir}/scripts/ssh.py --status
# SSHログインログを表示
python3 {baseDir}/scripts/ssh.py --logs
# 失敗したログインログのみを表示
python3 {baseDir}/scripts/ssh.py --logs
(原文はここで切り捨てられています) 📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
宝塔面板运维监控
宝塔面板服务器的全方位运维监控工具,支持多服务器管理、资源监控、网站状态检查、服务状态检查、SSH安全审计、计划任务管理等功能。
图标资源
技能包提供以下图标文件,可在生成报告时引用:
| 文件 | 格式 | 用途 |
|---|---|---|
icon/bt-logo.svg |
SVG | 矢量图标,适合缩放 |
使用示例(生成报告时):
# 服务器巡检报告

## 概述
...
AI 使用约束
本技能用于查询和展示服务器状态数据,AI应遵循以下原则:
- 数据中立:如实展示监控数据,不夸大或缩小问题严重性
- 客观分析:基于阈值配置给出告警,避免主观判断
- 数据驱动:建议和结论应基于实际数据,不得臆测
- 隐私保护:不主动泄露服务器敏感信息(如IP、Token、域名)
- 执行前告知:由于接口数据较多,获取和分析需要一定时间,AI应先向用户简述即将执行的操作步骤,然后再执行命令获取数据
执行流程示例:
AI: 我将为您执行以下操作:
1. 获取服务器系统资源状态(CPU、内存、磁盘)
2. 检查网站运行状态
3. 检查服务运行状态
正在获取数据,请稍候...
[执行命令]
[展示结果和分析]
服务器配置管理
重要: 没有服务器信息时需要添加
使用配置工具管理服务器:
# 查看帮助
python3 {baseDir}/scripts/bt-config.py -h
# 添加服务器
python3 {baseDir}/scripts/bt-config.py add -n prod-01 -H https://panel.example.com:8888 -t YOUR_TOKEN
# 列出服务器
python3 {baseDir}/scripts/bt-config.py list
# 设置阈值
python3 {baseDir}/scripts/bt-config.py threshold --cpu 75 --memory 80
常用场景
场景一:初次使用配置服务器
当用户第一次使用本技能时,需要先配置服务器连接信息:
# 添加服务器(需要面板地址和API Token)
python3 {baseDir}/scripts/bt-config.py add -n prod-01 -H https://panel.example.com:8888 -t YOUR_API_TOKEN
# 查看已配置的服务器
python3 {baseDir}/scripts/bt-config.py list
获取API Token的方法:
- 登录宝塔面板
- 进入「面板设置」->「API接口」
- 点击「获取API Token」
用户意图识别:
- "帮我配置宝塔服务器" → 引导用户添加服务器配置
- "添加一台服务器" → 执行 bt-config.py add
- "查看有哪些服务器" → 执行 bt-config.py list
场景二:多服务器资源汇总
当用户需要了解所有服务器的整体运行状态时:
# 查看所有服务器的资源使用情况
python3 {baseDir}/scripts/monitor.py --format table
# 查看所有服务器的网站状态汇总
python3 {baseDir}/scripts/sites.py
# 查看所有服务器的服务状态
python3 {baseDir}/scripts/services.py
用户意图识别:
- "服务器整体情况怎么样" → 执行 monitor.py
- "所有服务器健康状态" → 执行 monitor.py + sites.py
- "多服务器资源使用情况" → 执行 monitor.py --format table
场景三:单台服务器日常巡检
当用户需要对单台服务器进行全面检查时:
# 指定服务器名称进行各项检查
python3 {baseDir}/scripts/monitor.py --server prod-01 --format table
python3 {baseDir}/scripts/sites.py --server prod-01
python3 {baseDir}/scripts/services.py --server prod-01
python3 {baseDir}/scripts/ssh.py --status --server prod-01
python3 {baseDir}/scripts/crontab.py --backup-only --server prod-01
用户意图识别:
- "检查 prod-01 这台服务器" → 执行上述检查命令
- "帮我日常巡检" → 执行系统监控、网站状态、服务状态检查
- "这台服务器有问题吗" → 执行全面检查并汇总告警
场景四:网站SSL证书检查
当用户关心SSL证书是否即将过期时:
# 查看SSL即将过期的网站
python3 {baseDir}/scripts/sites.py --filter ssl-warning
# 查看SSL已过期的网站
python3 {baseDir}/scripts/sites.py --filter ssl-expired
用户意图识别:
- "SSL证书快过期了吗" → 执行 sites.py --filter ssl-warning
- "有哪些网站证书过期了" → 执行 sites.py --filter ssl-expired
场景五:安全审计
当用户需要进行安全检查时:
# 查看SSH登录失败记录
python3 {baseDir}/scripts/ssh.py --logs --filter failed
# 搜索特定IP的登录记录
python3 {baseDir}/scripts/ssh.py --logs --search 192.168.1.100
# 查看SSH服务状态
python3 {baseDir}/scripts/ssh.py --status
用户意图识别:
- "有没有异常登录" → 执行 ssh.py --logs --filter failed
- "查一下这个IP的登录记录" → 执行 ssh.py --logs --search IP
- "SSH安全检查" → 执行 ssh.py --status 和 ssh.py --logs
场景六:服务故障排查
当某个服务出现问题时:
# 查看服务状态
python3 {baseDir}/scripts/services.py --server prod-01
# 查看服务错误日志
python3 {baseDir}/scripts/logs.py --server prod-01 --service nginx --lines 200
python3 {baseDir}/scripts/logs.py --server prod-01 --service redis
用户意图识别:
- "Nginx/Apache/Redis出问题了" → 查看服务状态 + 查看错误日志
- "服务报错了,帮我看看日志" → 执行 logs.py 查看对应服务日志
场景七:备份任务检查
当用户关心备份是否正常时:
# 查看所有备份任务
python3 {baseDir}/scripts/crontab.py --backup-only
# 查看特定备份任务的执行日志
python3 {baseDir}/scripts/crontab.py --logs --task-id 11
用户意图识别:
- "备份任务正常吗" → 执行 crontab.py --backup-only
- "查看备份日志" → 执行 crontab.py --logs --task-id ID
版本要求
- 宝塔面板: >= 9.0.0
- Python: >= 3.10
用法
系统资源监控
# 查看帮助
python3 {baseDir}/scripts/monitor.py -h
# 监控所有服务器
python3 {baseDir}/scripts/monitor.py
# 监控指定服务器
python3 {baseDir}/scripts/monitor.py --server prod-01
# JSON格式输出
python3 {baseDir}/scripts/monitor.py --format json
# 表格格式输出
python3 {baseDir}/scripts/monitor.py --format table
# 输出到文件
python3 {baseDir}/scripts/monitor.py --output report.json
网站状态检查
# 查看帮助
python3 {baseDir}/scripts/sites.py -h
# 检查所有服务器的网站状态
python3 {baseDir}/scripts/sites.py
# 检查指定服务器
python3 {baseDir}/scripts/sites.py --server prod-01
# 只显示停止的网站
python3 {baseDir}/scripts/sites.py --filter stopped
# 只显示SSL即将过期的网站(30天内)
python3 {baseDir}/scripts/sites.py --filter ssl-warning
# 只显示SSL已过期的网站
python3 {baseDir}/scripts/sites.py --filter ssl-expired
# JSON格式输出
python3 {baseDir}/scripts/sites.py --format json
# 输出到文件
python3 {baseDir}/scripts/sites.py --output sites.json
服务状态检查
# 查看帮助
python3 {baseDir}/scripts/services.py -h
# 检查所有服务器的服务状态
python3 {baseDir}/scripts/services.py
# 检查指定服务器
python3 {baseDir}/scripts/services.py --server prod-01
# 只检查特定服务
python3 {baseDir}/scripts/services.py --service nginx --service redis
# JSON格式输出
python3 {baseDir}/scripts/services.py --format json
# 输出到文件
python3 {baseDir}/scripts/services.py --output services.json
日志读取
# 查看帮助
python3 {baseDir}/scripts/logs.py -h
# 查看Nginx错误日志
python3 {baseDir}/scripts/logs.py --service nginx
# 查看Redis日志
python3 {baseDir}/scripts/logs.py --service redis
# 查看Apache错误日志
python3 {baseDir}/scripts/logs.py --service apache
# 查看MySQL错误日志
python3 {baseDir}/scripts/logs.py --service mysql
# 查看MySQL慢查询日志
python3 {baseDir}/scripts/logs.py --service mysql --log-type slow
# 查看PostgreSQL日志(需要插件)
python3 {baseDir}/scripts/logs.py --service pgsql
# 查看PostgreSQL慢日志
python3 {baseDir}/scripts/logs.py --service pgsql --log-type slow
# 指定服务器和行数
python3 {baseDir}/scripts/logs.py --server prod-01 --service nginx --lines 200
# JSON格式输出
python3 {baseDir}/scripts/logs.py --service nginx --format json
SSH状态和日志检查
# 查看帮助
python3 {baseDir}/scripts/ssh.py -h
# 查看SSH服务状态
python3 {baseDir}/scripts/ssh.py --status
# 查看SSH登录日志
python3 {baseDir}/scripts/ssh.py --logs
# 只查看失败的登录日志
python3 {baseDir}/scripts/ssh.py --logs --filter failed
# 只查看成功的登录日志
python3 {baseDir}/scripts/ssh.py --logs --filter success
# 搜索特定IP的登录记录
python3 {baseDir}/scripts/ssh.py --logs --search 192.168.1.1
# 指定服务器
python3 {baseDir}/scripts/ssh.py --status --server prod-01
# JSON格式输出
python3 {baseDir}/scripts/ssh.py --logs --format json
计划任务检查
# 查看帮助
python3 {baseDir}/scripts/crontab.py -h
# 查看所有计划任务
python3 {baseDir}/scripts/crontab.py
# 只查看备份任务
python3 {baseDir}/scripts/crontab.py --backup-only
# 查看指定服务器
python3 {baseDir}/scripts/crontab.py --server prod-01
# 查看备份任务日志
python3 {baseDir}/scripts/crontab.py --logs --task-id 11
# JSON格式输出
python3 {baseDir}/scripts/crontab.py --format json
参数说明
monitor.py 参数
| 参数 | 说明 | 默认值 |
|---|---|---|
--server, -s |
指定服务器名称 | 所有服务器 |
--format, -f |
输出格式 (json/table) | json |
--output, -o |
输出文件路径 | 标准输出 |
--config, -c |
配置文件路径 | 自动查找 |
sites.py 参数
| 参数 | 说明 | 默认值 |
|---|---|---|
--server, -s |
指定服务器名称 | 所有服务器 |
--format, -f |
输出格式 (json/table) | table |
--output, -o |
输出文件路径 | 标准输出 |
--filter |
过滤条件 (stopped/ssl-warning/ssl-expired) | 无 |
--config, -c |
配置文件路径 | 自动查找 |
services.py 参数
| 参数 | 说明 | 默认值 |
|---|---|---|
--server, -s |
指定服务器名称 | 所有服务器 |
--format, -f |
输出格式 (json/table) | table |
--output, -o |
输出文件路径 | 标准输出 |
--service |
指定要检查的服务(可多次指定) | 默认服务列表 |
--config, -c |
配置文件路径 | 自动查找 |
logs.py 参数
| 参数 | 说明 | 默认值 |
|---|---|---|
--server, -s |
指定服务器名称 | 所有服务器 |
--service |
服务名称 (nginx/apache/redis/mysql/pgsql) | 必填 |
--log-type |
日志类型 (error/slow) | error |
--lines, -n |
返回最后N行日志 | 100 |
--format, -f |
输出格式 (json/table) | table |
--output, -o |
输出文件路径 | 标准输出 |
--config, -c |
配置文件路径 | 自动查找 |
注意:只有已安装的服务才能获取日志,尝试获取未安装服务的日志会返回错误。
ssh.py 参数
| 参数 | 说明 | 默认值 |
|---|---|---|
--server, -s |
指定服务器名称 | 所有服务器 |
--status |
查看SSH服务状态 | 否 |
--logs |
查看SSH登录日志 | 否 |
--filter |
日志过滤 (ALL/success/failed) | ALL |
--search |
搜索关键字(IP或用户名) | 无 |
--limit, -n |
返回日志条数 | 50 |
--format, -f |
输出格式 (json/table) | table |
--output, -o |
输出文件路径 | 标准输出 |
--config, -c |
配置文件路径 | 自动查找 |
crontab.py 参数
| 参数 | 说明 | 默认值 |
|---|---|---|
--server, -s |
指定服务器名称 | 所有服务器 |
--backup-only |
只显示备份任务 | 否 |
--logs |
查看任务日志 | 否 |
--task-id |
任务ID(配合--logs使用) | 无 |
--days |
日志查询天数 | 7 |
--format, -f |
输出格式 (json/table) | table |
--output, -o |
输出文件路径 | 标准输出 |
--config, -c |
配置文件路径 | 自动查找 |
监控指标
系统资源监控 (monitor.py)
通过单一API接口获取完整的系统监控数据:
- CPU: 使用率、核心数、型号、用户/系统占用
- 内存: 总量、使用量、可用量、缓存、使用率
- 磁盘: 多分区详情、总量、使用量、使用率
- 网络: 实时速度、总流量、各网卡统计
- 负载: 1/5/15分钟负载
- 系统: 主机名、操作系统、运行时间、面板版本
- 资源: 网站、数据库、FTP账户数量
网站状态检查 (sites.py)
支持多种项目类型:
| 类型 | 进程信息 | 运行状态判断 |
|---|---|---|
| PHP | 无 | status==1 && stop为空 |
| Java | pid_info | pid > 0 |
| Node | load_info | run==true |
| Go | load_info | run==true |
| Python | pids | run==true |
| .NET | load_info | run==true |
| Proxy(反代) | 无 | status==1 |
| HTML(静态) | 无 | status==1 |
| Other(其他) | load_info | run==true |
检查项目:
- 运行状态: 运行中/已停止/启动中
- SSL证书: 有效/即将过期/已过期
- 进程信息: PID、内存、CPU、线程数(适用于Java/Node/Go/Python/.NET/Other)
- 反代健康: 反代项目的后端健康状态
- 基础信息: 路径、域名、PHP版本、端口、代理地址
服务状态检查 (services.py)
支持检查的服务:
| 服务 | 状态检查 | 日志支持 |
|---|---|---|
| Nginx | ✓ | ✓ 错误日志 |
| Apache | ✓ | ✓ 错误日志 |
| MySQL | ✓ | ✓ 错误日志/慢日志 |
| Redis | ✓ | ✓ 日志文件 |
| Memcached | ✓ | ✗ |
| Pure-FTPD | ✓ | ✗ |
| PHP (多版本) | ✓ | ✗ |
| PostgreSQL | ✓ | ✓ 错误日志/慢日志 |
服务状态字段说明:
| 字段 | 说明 |
|---|---|
installed (setup) |
服务是否已安装 |
status |
服务是否正在运行 |
version |
已安装的版本号 |
pid |
主进程ID(运行中时) |
重要区别:
installed=false:服务未安装,无法获取日志installed=true, status=false:服务已安装但未运行installed=true, status=true:服务已安装且正在运行
PHP多版本共存说明:
- PHP是支持多版本共存的服务,一台服务器可能同时安装多个PHP版本
- PHP服务名称格式:
php-X.X(如php-8.2、php-7.4) - 系统会自动扫描已安装的PHP版本并分别显示状态
- 常见PHP版本:8.5, 8.4, 8.3, 8.2, 8.1, 8.0, 7.4, 7.3, 7.2, 7.1, 7.0, 5.4, 5.3, 5.2
检查项目:
- 运行状态: 运行中/已停止
- 版本信息: 已安装版本号
- 进程PID: 主进程ID
日志读取 (logs.py)
支持的日志类型:
| 日志类型 | 服务 | 获取方式 |
|---|---|---|
| 错误日志 | nginx | 文件: /www/server/nginx/logs/error.log |
| 错误日志 | apache | 文件: /www/wwwlogs/error_log |
| 日志文件 | redis | 文件: /www/server/redis/redis.log |
| 错误日志 | mysql | 接口: /database?action=GetErrorLog |
| 慢日志 | mysql | 接口: /database?action=GetSlowLogs |
| 错误日志 | pgsql | 插件接口: pgsql_manager |
| 慢日志 | pgsql | 插件接口: pgsql_manager |
注意事项:
- 只有已安装(
installed=true)的服务才能获取日志 - 尝试获取未安装服务的日志会返回错误
- Memcached 和 Pure-FTPD 不支持日志获取
SSH状态和日志检查 (ssh.py)
检查项目:
- SSH服务状态: 运行中/已停止
- 端口: SSH监听端口
- Ping设置: 是否允许ping
- 防火墙状态: 是否启用
- Fail2ban: 是否安装和运行
登录日志字段:
- 时间: 登录时间
- 类型: 成功/失败
- 用户: 登录用户名
- IP地址: 来源IP
- 地区: IP归属地
- 登录方式: password/key
计划任务检查 (crontab.py)
任务类型:
- 备份网站: 自动备份网站文件和数据库
- 备份数据库: 单独备份数据库
- 备份目录: 备份指定目录
- Shell脚本: 自定义Shell命令
- 同步时间: NTP时间同步
- 切割日志: 日志分割任务
- 访问URL: 定时HTTP请求
检查项目:
- 任务状态: 启用/禁用
- 执行周期: 每天/每小时/每周/每月/间隔分钟
- 备份目标: 网站名称/数据库名称
- 保留数量: 备份保留份数
- 执行结果: 最后一次执行状态
告警配置
SSL证书告警
| 剩余天数 | 告警级别 |
|---|---|
| 已过期 | critical |
| ≤ 7 天 | critical |
| ≤ 30 天 | warning |
服务器资源告警阈值
可在配置文件中设置告警阈值:
global:
thresholds:
cpu: 80 # CPU使用率告警阈值(%)
memory: 85 # 内存使用率告警阈值(%)
disk: 90 # 磁盘使用率告警阈值(%)