Watcher Jira アクション
jira
アクションを使用して、Atlassian の Jira Software に課題を作成します。課題を作成するには、elasticsearch.yml
で 少なくとも 1 つの Jira アカウントを設定する必要があります。
Jira アクションの設定
actions
配列で Jira アクションを設定します。アクション固有の属性は jira
キーワードを使用して指定されます。
次のスニペットは、シンプルな Jira アクションの定義を示しています:
Js
"actions" : {
"create-jira-issue" : {
"transform" : { ... },
"throttle_period" : "5m",
"jira" : {
"account" : "integration-account",
"fields" : {
"project" : {
"key": "PROJ"
},
"issuetype" : {
"name": "Bug"
},
"summary" : "Encountered {{ctx.payload.hits.total}} errors in the last 5 minutes",
"description" : "Encountered {{ctx.payload.hits.total}} errors in the last 5 minutes (facepalm)",
"labels" : ["auto"],
"priority" : {
"name" : "High"
}
}
}
}
}
elasticsearch.yml で設定された Jira アカウントの名前。 |
|
課題が作成される Jira プロジェクトのキー。 | |
課題タイプの名前。 | |
Jira 課題の要約。 | |
Jira 課題の説明。 | |
Jira 課題に適用するラベル。 | |
Jira 課題の優先度。 |
Jira アクション属性
Jira プロジェクトの設定方法によって、課題には多くの異なるフィールドと値がある場合があります。したがって、jira
アクションは、その issue
フィールド内の任意のタイプのサブフィールドを受け入れることができます。これらのフィールドは、Jira の Create Issue API を呼び出す際に直接使用され、任意のカスタムフィールドを使用できるようになります。
project.key
(または project.id
)、issuetype.name
(または issuetype.id
)、および issue.summary
は、Jira で課題を作成するために常に必要です。
名前 | 必須 | 説明 |
---|---|---|
account |
いいえ | メッセージを送信するために使用する Jira アカウント。 |
proxy.host |
いいえ | 使用するプロキシホスト (proxy.port と組み合わせてのみ) |
proxy.port |
いいえ | 使用するプロキシポート (proxy.host と組み合わせてのみ) |
fields.project.key |
はい | 課題が作成される Jira プロジェクトのキー。 |
それは、プロジェクトの識別子が知られている場合、issue.project.id
に置き換えることができます。 |
| fields.issuetype.name
| はい | 課題のタイプを識別する名前。Jira は、Bug
、Task
、Story
、New Feature
などのデフォルトの課題タイプを提供します。それは、タイプの識別子が知られている場合、issue.issuetype.id
に置き換えることができます。 |
| fields.summary
| はい | 課題の要約 (またはタイトル)。 |
| fields.description
| いいえ | 課題の説明。 |
| fields.labels
| いいえ | Jira 課題に適用するラベル。 |
| fields.priority.name
| いいえ | Jira 課題の優先度。Jira はデフォルトの High
、Medium
および Low
優先度レベルを提供します。 |
| fields.assignee.name
| いいえ | 課題を割り当てるユーザーの名前。 |
| fields.reporter.name
| いいえ | 課題の報告者として識別されるユーザーの名前。
デフォルトはユーザーアカウントです。 |
| fields.environment
| いいえ | 課題に関連する環境の名前。 |
| fields.customfield_XXX
| いいえ | 課題のカスタムフィールド XXX (例: “customfield_10000”: “09/Jun/81”) |
Jira アカウントの設定
Watcher が Jira と通信するために使用できるアカウントを xpack.notification.jira
名前空間で elasticsearch.yml
に設定します。
Watcher は Jira Software の基本認証をサポートしています。Jira アカウントを設定するには、(see secure settings) を指定する必要があります:
Yaml
bin/elasticsearch-keystore add xpack.notification.jira.account.monitoring.secure_url
bin/elasticsearch-keystore add xpack.notification.jira.account.monitoring.secure_user
bin/elasticsearch-keystore add xpack.notification.jira.account.monitoring.secure_password
設定ファイルやクラスター設定に機密データ (url
、user
、password
) を保存することは安全ではなく、非推奨です。代わりに Elasticsearch の安全な keystore メソッドを使用してください。
ネットワーク上で平文で送信される資格情報を避けるために、Watcher は平文 HTTP プロトコルに基づく url
設定 (例: http://internal-jira.elastic.co
) を拒否します。このデフォルトの動作は、明示的な allow_http
設定で無効にできます:
url
フィールドには、課題を作成するために使用されるパスも含めることができます。デフォルトでは /rest/api/2/issue
です。これを設定する場合は、このパスが課題を作成するためのエンドポイントへの完全なパスであることを確認してください。
Yaml
xpack.notification.jira:
account:
monitoring:
allow_http: true
安全な HTTPS プロトコルでのみ基本認証を使用することを強くお勧めします。
Jira 課題 のデフォルトを指定することもできます:
Yaml
xpack.notification.jira:
account:
monitoring:
issue_defaults:
project:
key: proj
issuetype:
name: Bug
summary: "X-Pack Issue"
labels: ["auto"]
複数の Jira アカウントを設定する場合は、デフォルトアカウントを設定するか、通知を送信するアカウントを jira
アクションで指定する必要があります。
Yaml
xpack.notification.jira:
default_account: team1
account:
team1:
...
team2:
...