• 製品
  • 使用を開始する
  • 関連ドキュメント
  • リソース

Amazon DevOps Guru と統合する

この記事では、Jira Service Management Cloud の一部のお客様に段階的に展開されている、Jira Service Management でネイティブに利用できる新しいアラート機能を取り上げています。ご利用のサイトにはまだ表示されていないか、利用できない可能性があります。

Amazon DevOps Guru のロゴ

Amazon DevOps Guru は、機械学習を使用してリソースのテレメトリを分析し、潜在的な運用上の問題を特定して是正措置を推奨することで、アプリ可用性を向上させる運用ツールです。

統合でできるようになること

Jira Service Management は DevOps Guru で生成されるインサイトのディスパッチャーとして機能して、オンコール スケジュールに基づいて通知する適切な担当者を決定します。メール、テキスト メッセージ (SMS)、電話、iPhone や Android のプッシュ通知によって通知して、アラートが確認されるかクローズされるまでアラートをエスカレートします。DevOps Guru はインサイトを生成し、Jira Service Management は適切な担当者がそのインサイトに取り組むことを保証します。

統合による機能

  • DevOps Guru でインサイトが生成されると、統合によって Jira Service Management にアラートが自動的に作成され、インサイトの種類と重大度に基づいて優先度が付けられます。

  • DevOps Guru でインサイトが解決されると、統合によって関連するアラートが Jira Service Management で自動的にクローズされます。

  • DevOps Guru がインサイトに異常を追加すると、Jira Service Management アラートにメモとして反映されます。

統合をセットアップする

Amazon DevOps Guru は API ベースの統合です。設定は次の手順で行います。

  • Jira Service Management で DevOps Guru 統合を追加する

  • DevOps Guru で統合を設定する

DevOps Guru 統合を追加する

双方向統合は Free プランと Standard プランではサポートされていません。他のすべての統合は FreeStandard でチーム レベルでサポートされています。ただし、送信統合を機能させるには、上位のプランにアップグレードする必要があります。Settings (歯車アイコン) > Products (Jira 設定の下) > OPERATIONS からサイト レベルで統合を追加できるのは、Premium プランと Enterprise プランのみです。

統合をチームの運用ページから追加すると、そのチームが統合の所有者になります。つまり、Jira Service Management は、この統合を通じて受信したアラートをチームにのみ割り当てます。

Jira Service Management で DevOps Guru 統合を追加するには、次の手順を実行します。

  1. チームの運用ページに移動します。

  2. 左側のナビゲーション パネルで、[統合]、[統合を追加] の順に選択します。

  3. 検索を実行して「DevOps Guru」を選択します。

  4. 次の画面で、統合の名前を入力します。

  5. オプション: 特定のチームが統合からのアラートを受信するようにする場合は、[Assignee team (担当者チーム)] のチームを選択します。

  6. [続行] を選択します。
    この時点で、統合が保存されます。

  7. [統合を設定するステップ] セクションを展開して、API URL をコピーします。
    この URL は、後ほど DevOps Guru で統合を設定する際に使用します。

  8. [統合をオンにする] を選択します。
    統合のために作成したルールは、統合をオンにした場合にのみ機能します。

Jira Service Management にメッセージを送信するように Amazon SNS を設定する

Amazon SNS を設定して Jira Service Management に SNS メッセージを送信するには、次の手順に従います。

  1. Amazon SNS コンソールで、[トピック] を選択します。

  2. [Create topic (トピックを作成)] を選択します。

  3. [Type (タイプ)] で、[Standard (標準)] を選択します。

  4. トピックの名前を入力します。たとえば、「operational-insights」のようにします。

  5. 既定の設定をそのままにするか、ニーズに合わせて設定します。

  6. [Create Topic (トピックを作成)] を選択します。

  7. [Subscriptions (購読)] セクションまでスクロールして、[Create subscription (購読を作成)] を選択します。

    1. [Protocol (プロトコル)] は、[HTTPS] を選択します。

    2. エンドポイントには、以前に Jira Service Management からコピーしたサブスクリプション URL を使用します。

  8. 残りのオプションはそのままにするか、ニーズに合わせて設定します。

  9. [Create subscription (登録を作成)] を選択します。

サブスクリプションを作成すると、Amazon SNS はユーザーの Jira Service Management 統合に確認メッセージを送信し、Jira Service Management はそれを自動的に承認します。確認アラートが届くはずです。

Amazon DevOps Guru を設定する

DevOps Guru コンソールを初めて閲覧する際に、DevOps Guru が自分のアカウントで動作できるようにします。

  1. DevOps Guru コンソールで、[Get Started (開始)] を選択します。

  2. すでに DevOps Guru を有効にしている場合は、[Settings (設定)] を選択して SNS トピックを追加します。

  3. 監視するリソースを選択します。

  4. [Select an existing SNS topic (既存の SNS トピックを選択)] を選択します。

  5. 以前に作成したトピックを選択します (operational-insights)。

  6. [Add SNS topic (SNS トピックを追加)] を選択します。

  7. [Enable (有効にする)] を選択します (すでにサービスを有効にしている場合は [保存])。

DevOps Guru から送信されたサンプル ペイロード

アラートのペイロードを作成する

JSON

1 2 3 4 5 6 7 8 9 10 11 { "Type": "Notification", "MessageId": "1cf7a0eb-4179-4181-b15b-ea22c5aa0280", "TopicArn": "arn:aws:sns:us-east-1:089311581210:test-sns", "Message":"{\"AccountId\":\"123456789012\",\"InsightId\":\"abc123a7-17a3-46d9-b895-1ae38317ced2\",\"InsightDescription\":\"Lambda Errors Anomalous\",\"InsightUrl\":\"https://console.aws.amazon.com/codeguru/devopsguru?#/insight/reactive/ABCDabcdAAAAAAAAAcXzDoJsi_kvAhzmKKUGk6CSixyzABC\",\"Region\":\"us-east-1\",\"InsightSeverity\":\"low\",\"MessageType\":\"NEW_INSIGHT\",\"InsightType\":\"REACTIVE\",\"StartTime\":\"Jan 24th 2010 4:55:123\",\"EndTime\":\"Jan 24th 2010 4:55:123\",\"Anomalies\":[{\"Id\":\"123abcd1-62cb-4161-986c-0be917d42706\",\"StartTime\":\"Jan 24th 2010 2:55:123\",\"EndTime\":\"Jan 24th 2010 3:55:123\",\"DataIdentifiers\":{\"Namespace\":\"AWS/DynamoDB\",\"Metric\":\"ConsumedReadCapacityUnits\",\"stats\":\"Sum\",\"Resources\":[{\"ResourceType\":\"Table\",\"ResourceId\":\"arn:..../tablename\"}]}}],\"Recommendations\":[{\"Title\":\"Configure provisioned concurrency for Lambda\",\"Description\":\"Your Lambda function is having trouble scaling. See this link to learn how to enable provisioned...\",\"Reason\":\"The Duration metric in Lambda breached a high threshold.\",\"Url\":\"https://docs.aws.amazon.com/lambda/latest/dg/configuration-concurrency.html#configuration-concurrency-provisioned\",\"RelatedMetrics\":[],\"RelatedEvents\":[]}]}", "Timestamp": "2012-08-05T22:31:30.673Z", "SignatureVersion": "1", "Signature": "XrsO2wtE0b+ofOl1Z85tqLqQn1fMuv07uRttlimTUg+rV4U9RmNSSBEdlmyWvtGgpjebsmNv1wkjUsBQOJZjZnpZp5FBn6quAn3twNdRMmMLf15lv6ESbYF8mpFHwmMhgWVkgq60vmjj/ZLwiH9Pr/cxVYOR0aPQBPDwTYn8w6g=", "SigningCertURL": "https://sns.us-east-1.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem", "UnsubscribeURL": "https://sns.us-east-1.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-1:089311581210:CloudWatchHTTPAlarms:1841c5ca-ddda-450e-bbfb-bf0cf15813db" }

Jira Service Management ではペイロードは次のように解析されます。

JSON

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 { "TopicArn": "arn:aws:sns:us-east-1:089311581210:test-sns", "AccountId": "123456789012", "InsightId": "abc123a7-17a3-46d9-b895-1ae38317ced2", "InsightDescription": "Lambda Errors Anomalous", "InsightUrl": "https://console.aws.amazon.com/codeguru/devopsguru?#/insight/reactive/ABCDabcdAAAAAAAAAcXzDoJsi_kvAhzmKKUGk6CSixyzABC", "Region": "us-east-1", "InsightSeverity": "low", "MessageType": "NEW_INSIGHT", "InsightType": "REACTIVE", "StartTime": "Jan 24th 2010 4:55:123", "EndTime": "Jan 24th 2010 4:55:123", "AnomalyDetails": [ { "Id": "AP8fPq2F7cSqdkgAWTkeU2YAAAF1_GN9YIxzoKM_WkDOJim_ozMyiajN5VGZ5zqg", "StartTime": 1606257180000, "EndTime": 1606260300000, "SourceDetails": [ { "DataSource": "CW_METRICS", "DataIdentifiers": { "name": "Duration", "namespace": "AWS/Lambda", "period": "60", "stat": "Average", "unit": "None", "dimensions": "{\"FunctionName\": \"awscodestar-random-lambda-GetHelloWorld\"}" } } ] } ], "Recommendations": [ { "Title": "Configure provisioned concurrency for Lambda", "Description": "Your Lambda function is having trouble scaling. See this link to learn how to enable provisioned...", "Reason": "The Duration metric in Lambda breached a high threshold.", "Url": "https://docs.aws.amazon.com/lambda/latest/dg/configuration-concurrency.html#configuration-concurrency-provisioned", "RelatedMetrics": [ ], "RelatedEvents": [ ] } ] }

 

さらにヘルプが必要ですか?

アトラシアン コミュニティをご利用ください。