1

Sensu Core を使用して Python スクリプトを監視したいのですが、その方法がわかりません。

Sensu のドキュメントから、これにはSensu Checksが必要です。提供されている ruby​​ スクリプトの例では、chef-client が実行されていることを確認します。

#!/usr/bin/env ruby

# get the current list of processes
processes = `ps aux`

# determine if the chef-client process is running
running = processes.lines.detect do |process|
  process.include?('chef-client')
end

# return appropriate check output and exit status code
if running
  puts 'OK - Chef client process is running'
  exit 0
else
  puts 'WARNING - Chef client process is NOT running'
  exit 1
end

アプリケーションではなく、特定のスクリプトに対してこのようなチェックを実装するにはどうすればよいですか? つまり、Python 全般ではなく、特定の Python スクリプト (test.py など) を監視するにはどうすればよいでしょうか?

4

3 に答える 3

2

そのため、AWS Linux クライアントに対して sensu でいくつかの python スクリプトを正常に実行してきました。これは、私のチェック定義の良い例です。

{
 "checks": {
"check-rds-limit": {
  "interval": 86400, 
  "command": "/etc/sensu/plugins/rds-limit-check.py",
  "contacts": [
    "cloud-ops"
  ],
  "occurrences": 1,   
  "subscribers": [
    "cloud-ops-subscription"
  ], 
  "handlers": [
    "email",
    "slack"
  ]
}
  }
}

Python プラグインは、シバン パスの定義から開始できます。

#!/usr/bin/env python
import sys
...
...
//<code condition for warning>
sys.exit(1)
//<code condition for critical>
sys.exit(2)
//<code condition where everything is fine>
sys.exit(0)
于 2016-05-02T14:41:18.210 に答える