contentPowerShellでログファイルを監視してWebhookで通知するWindowsPowerShellWindowsServerはじめに本記事は、WindowsのPowerShellを用いて、アプリケーションが出力するログファイルを監視する方法について記載しています。特定のエラーメッセージ検知時にWebhookを使用してチャットアプリに通知します。監視対象とするログファイルは、Cドライブ配下などに出力するテキストのログファイルを対象とします。Serverで監視ソフトウェアを導入することなく、特定のメッセージを検知時に通知したいといった小規模な監視が実現できます。WebhookslackやRocket.Chatなどのチャットアプリは、Webhookとしてcurlを使用する場合がほとんどです。通知の仕組みを作る考え方として、連携したいチャットアプリがSDK等を公開していて、Pythonなどのライブラリを使用できるのであれば、Pythonで書いた方がスマートな場合もあります。本記事では、WindowsでWebhookを使用するための方法を前提とします。Linux)という便利なものがあるので、WSLが使用できる環境であれば、WSLも一つの案だと思います。16215以降に搭載されています。ServerでWebhookを使用するためには、curlが必要です。curlを使用するために、curlから64bitのbinaryをダウンロードします。project」でいいでしょう。PowerShellPowershellでログ監視の設定を行います。以下の例は、testフォルダ配下のtest.txtファイルに、ERRORの文字列が出力された場合、curl.batを起動してWebhookと連携します。}batファイルでは、Webhookを使用するたにcurlの処理(※)を書きます。Windowsでcurlを使う場合のポイントは、文字列を適切にダブルクォーテーションの引用符でくくることです。引用符の中で引用符を使用する場合はエスケープを行います。日本語をメッセージとして出力させたい場合は別途、考慮が必要です。以下の場合、チャットアプリにERRORの文字列を通知します。(※)例としてcurlのあるフォルダに移動して実行しています。<WebhookのURL>おわりに上記、powershell.ps1とcurl.batファイルを配備し、powershell.ps1を実行すれば監視が始まります。Serverでちょっとした監視がしたいという場合に便利です。requestStockLike3@BrutusDevOpsとAIの二刀流を目指す凡人。Cloud、Terraform、Ansible等について発信しています。登壇、執筆等あれば、Twitterよりメッセージお願いします。Puulsでも受け付けてます。https://puuls.jp/p/1iz5MPU1tgkhttps://brutus.ml/Follow株式会社GAUSS株式会社GAUSSは、AIソフトウェアを組み込んだサーバの提供、AIサービス構築のコンサルティング、AIのエンジニア育成をセットにしてサービス提供を展開するスタートアップ企業です。upLoginユーザーは見つかりませんでした。