生成AI
macOSの定期監視スクリプトがdocker/lsofのハングで止まらないようにする:bounded_runで二重に時間制限をかける

定期実行している監視スクリプトが、内部で呼ぶ `docker` や `lsof` の応答待ちで止まり、後続の失敗検出・GC・メトリクス収集・生存通知まで巻き込んで数時間止まる。実運用しているサービスで、こうした問題に遭遇しました。

続きを読む
生成AI
エラー自動起票で同じ Issue が大量に立つ問題を3層の防御で止める(fingerprint 正規化・クローズ済み照合・起票上限)

エラーログ集約からGitHub Issueを自動起票する仕組みで、同じ原因なのにIssueが大量に立つ問題を、fingerprintの変動値正規化・クローズ済みIssueとの照合・時間あたりの起票上限という3層の防御で止める実装方法を解説します。

続きを読む
生成AI
Woodpecker CIのcronだけ「secret not found」で止まる原因と、Events設定ずれを夜間に検出する方法

Woodpecker CI で cron のときだけ secret not found になるのは、repo secret の Events 設定が cron に対応していないためです。Node.js と GitHub Actions を使い、この設定ずれ(drift)を夜間ヘルスチェックで自動検出する方法を紹介します。

続きを読む
WordPress
WordPressのエラー送信が止まったときの点検手順:error_get_last()の上書きとWP-CLI疎通確認

WordPressからのエラー送信が止まったとき、送信の故障を疑う前に行う点検の型と、error_get_last()が後続のNoticeで上書きされる欠陥の直し方、受け手のスキーマ検査をテストに写す方法、本番で安全に疎通確認できるWP-CLIコマンドの作り方をまとめます。

続きを読む
生成AI
ジョブキューの孤児エントリで13日間止まった同期を防ぐ: GCの定期実行と「止まり続けた時間」の監視

ジョブキューの孤児エントリが原因で、同期処理が13日間も気づかれずに停止していた事例を解説します。未使用だったGC(回収処理)の定期実行と、停止時間をstateファイルに記録してWARNする仕組みを、シェルスクリプトの実装例とともに紹介します。

続きを読む
インフラ
Woodpecker CIで特定リポジトリだけpipelineが生成されない原因はforge timeoutだった

セルフホストのWoodpecker CIを運用していると、「特定のリポジトリだけ、pushしてもpipelineが生成されない」という症状に出会うことがあります。

続きを読む
生成AI
cron監視の「どれか1本成功すればOK」をやめる:ジョブごとの死活監視を周期クラスで設計する

定期ジョブの監視を「直近24時間に1件でも成功していれば green」で済ませていませんか。cron式から周期クラスを自動推定し、ジョブごとに適切な期間で成功を評価、失敗原因まで分類するper-cronヘルスチェックの設計を解説します。

続きを読む
生成AI
夜間監視の自動起票が『同じ原因なのに量産される』を止めた話

夜間の監視ジョブが失敗するたびにGitHub Issueを自動起票する仕組みは便利ですが、同じ原因の失敗が続くと毎晩issueが積み上がります。本記事では同一原因のopenなissueに追記し、なければ新規作成するdedupロジックで増殖を解消した設計を紹介します。

続きを読む
生成AI
デプロイ後スモークテストの「全断」誤判定、原因は失敗理由をひとまとめに扱っていたこと

デプロイ後に自動で「サイトが生きているか」を確認するスモークテストの話です。「サイト全断」と「バージョン未反映」を同じ失敗として扱うと、アラートが緊急度を正しく伝えられなくなります。失敗理由の文字列パターンによる分類と、期待バージョンの取得元の見直しで、この誤判定を防いだ設計を紹介します。

続きを読む
インフラ
監視は監視対象の外に置く — セルフホストCIの死活監視をGitHub Actionsで担保する

ローカル1台のセルフホストCIはホストごと落ちると自己検知できない。常時稼働のGitHub Actionsから死活監視・SLO計測・config drift検出を外付けする設計を解説します。

続きを読む