データセンター アプリケーションで REST API を使用してサポート zip を作成する
サポート zip は、ご利用のアプリケーションの構成内容をアトラシアン サポートが理解し、お客様の問題を解決する上で役立ちます。
サポート zip を生成する最も一般的な方法は、アプリケーションの管理メニューからの作成です。ただし、Data Center アプリケーションでは、REST API を使用して zip を作成するほうが便利な場合があります。アプリケーションをクラスター化している場合、REST API を使用することで、現在アクセスしているノードだけでなく、すべてのノードから zip を生成できます。 サポート zip の作成に詳細を確認する
REST を使用して複数のノードからサポート zip を生成する方法は、アトラシアン トラブルシューティングおよびサポート ツール 1.11.0 以降を実行している Data Center アプリケーションでのみ利用できます。
このアプリはいつでもアップグレードできます。[管理] メニューで [アプリの管理] に移動し、アトラシアンのトラブルシューティングおよびサポート ツール (ATST) を検索します。古いバージョンを実行している場合は、アトラシアン サポート ツールと呼ばれる場合があります。アプリのアップグレードについて詳細を確認する
REST API のリファレンス
アトラシアン トラブルシューティングとサポート ツール 1.49.0 では、新しい API パラメータが追加されています。導入された変更の詳細を確認する
このページでは、curl と Windows PowerShell を使用した、データセンター アプリケーションでの REST API の使用例について説明します。任意のスクリプト言語をご利用いただけます。
REST API | 説明 | 対象 |
---|---|---|
/rest/troubleshooting/latest/support-zip/local | サポート zip の作成 | Server |
/rest/troubleshooting/latest/support-zip/status/task | 最近のすべての zip 作成タスクのステータスを取得 | Server |
/rest/troubleshooting/latest/support-zip/status/task/<taskId> | 特定の zip 作成タスクのステータスを取得 | Server と Data Center |
/rest/troubleshooting/latest/support-zip/download/<filename> | サポート zip ファイルのダウンロード | Server と Data Center |
/rest/troubleshooting/latest/support-zip/cluster | クラスタの複数のノードでサポート zip を作成 | Data Center |
/rest/troubleshooting/latest/support-zip/status/cluster/<clusterTaskId> | クラスタの zip 作成タスクのステータスを取得 | Data Center |
すべてのノードでサポート zip を生成
トラブルシューティングとサポート ツール アプリを表示して設定するには、管理者のグローバル権限が必要です。
データセンター インスタンスのすべてのノードのサポート zip をコマンド ラインから生成するには、次のコマンドを実行します。
curl -s -X POST -H 'Content-Type: application/json' -u <username>:<password> http://<base-url.example.com:8080>/rest/troubleshooting/latest/support-zip/cluster
これはクラスタ タスク ID とノード情報を返します。例:
{
"clusterTaskId":"eec930c0-687c-4a07-b625-02e95022b8ad",
"nodeIds":["jira1","jira2"]
}
クラスタ タスク ID は各ノードにあるすべての個々のサポート zip タスクをグループ化します。ここでそれぞれの進捗を確認します。
Content-Type ヘッダーを追加することで json ペイロードを追加できます。これを使用して、zip に含める特定のノードまたは項目を指定できます。
特定のノードでサポート zip を生成する
特定のノードを指定するには、リクエストに次のように nodeIds
を含めます。
curl -s -X POST -H 'Content-Type: application/json' -u <username>:<password> http://<base-url.example.com:8080>/rest/troubleshooting/latest/support-zip/cluster -d '{"nodeIds":["jira1","jira2"]}'
この例では、ノード ID は Jira1
と Jira2
です。ご利用の環境ではノード名が異なる場合があります。
リクエストの進行状況を確認する
特に大規模なインスタンスの場合、zip の生成には時間がかかる場合があります。タスクの進行状況を確認するには、次のコマンドを実行します。
curl -s -X GET -u <username>:<password> http://<base-url.example.com:8080>/rest/troubleshooting/latest/support-zip/status/cluster/<clusterTaskId>
この例でのクラスタ タスク ID は eec930c0-687c-4a07-b625-02e95022b8ad
です。
これは、各ノードでの zip 生成の現在の状況を返します。この例では、zip は完成していて、共有ホーム ディレクトリからダウンロードまたは転送できます。
{
"clusterTaskId": "eec930c0-687c-4a07-b625-02e95022b8ad",
"tasks": [
{
"taskId": "aaa192c8-f033-4df4-8530-95bcf328c646",
"progressPercentage": 100,
"progressMessage": "Your support ZIP can be found in your home directory at: /<shared-home>/export/JIRA_jira2_support_2018-06-11-23-35-12.zip or you can download a copy.",
"nodeId": "jira2",
"fileName": "JIRA_jira2_support_2018-06-11-23-35-12.zip"
},
{
"taskId": "d7086507-2d2d-464b-9a7f-9b580ed85956",
"progressPercentage": 100,
"progressMessage": "Your support ZIP can be found in your home directory at: /<shared-home>/export/JIRA_jira1_support_2018-06-11-23-35-09.zip or you can download a copy.",
"nodeId": "jira1"
}
]
}
/status/clustertaskID
がノードを返さない場合、ノードが応答していないか、そのノードで zip 生成が開始されていない可能性があります。リクエストがすべてのノードに到達してプロセスが開始されるまで数分間待ち、もう一度試してみてください。
特定のパラメータでサポート zip を生成する
管理コンソール経由でサポート zip を生成すると、含める項目を選択したり、必要に応じてファイル サイズを制限したり、選択した期間のログ ファイルをエクスポートしたりできます。これは、REST API を使用して zip を生成する場合も可能です。
たとえば、ログ ファイルとヘルス チェックの結果をノード 1 ~ 2 から取得し、ファイル サイズは制限したくない場合、次のコマンドを使用できます。
curl -s -X POST -H 'Content-Type: application/json' -u <username>:<password> http://<base-url.example.com:8080>/rest/troubleshooting/latest/support-zip/cluster -d '{"nodeIds":["jira1","jira2"], "items":["application-logs", "tomcat-logs", "healthchecks"], "limitFileSizes": false}'
1. 33 以前から受け入れられる REST API 値
items
と、それぞれの UI での表示名の一覧を示します。それぞれのアイテムの完全な説明については「サポート zip を作成する」をご参照ください。 UI での説明 | API フィールド | 既定で含まれるかどうか |
---|---|---|
認証構成 | auth-cfg | はい |
アプリケーション構成ファイル | application-config | はい |
アプリケーション プロパティ | application-properties | はい |
アプリケーションのカスタマイズ | confluence-customisations | はい (Confluence) |
ヘルス チェック | healthchecks | はい |
アプリケーション ログ | application-logs | はい |
キャッシュ構成 | cache-cfg | はい |
Fisheye / Crucible.out log | Fecru-out | はい (Fisheye / Crucible) |
Fisheye / Crucible のプラグイン構成 | fecru-pluginstate-properties | はい (Fisheye / Crucible) |
ローカルで変更済みのファイル | MODZ | はい (Fisheye / Crucible) |
Fisheye / Crucible のプラグイン構成ファイル | fecru-plugin-cfg | はい (Fisheye / Crucible) |
スレッド ダンプ | thread-dump | いいえ |
Tomcat 構成ファイル | tomcat-config | はい |
Tomcat ログ | tomcat-logs | はい |
Tomcat アクセス ログ | tomcat-access-logs | いいえ |
Jira クラスター ノード | cluster-nodes | はい (Jira) |
クラウド移行のログ | cloud-migration-logs | はい |
ランタイム診断データを含める | jfr-bundle | はい (Java Flight Recorder が有効になっている場合) |
Synchrony 設定 | synchrony-config | はい (Confluence) |
1.49.0 で追加された REST API パラメーター
1.49.0 バージョンのアプリには、新しい API パラメーターが追加されています。。これらのパラメーターにより、ログ ファイルの更新日を定義し、エクスポートされた各ファイルの最大ファイル サイズを選択できます。導入されたオプションについての詳細を確認する
ATST アプリを 1.49.0 以上にアップグレードして、引き続き旧 API でlimitFileSizes:true
パラメーターを使って Tomcat アクセス ログを取得する場合、すべての Tomcat アクセス ログが zip に追加されます。サポート zip のサイズにかなりの影響がある可能性があります。これは、これらのログが最大ファイル サイズ オプションの影響を受けないためです。
zip ファイルに追加する Tomcat アクセス ログ数を制限するには、新しい fileConstraintAge
パラメーターを使用してください。
新しい API パラメーターは、トラブルシューティングおよびサポート ツール 1.49.0 以降で使用できます。
パラメーター | 説明 | 値 |
---|---|---|
| 選択した期間内に最終変更されたログ ファイルをエクスポートします。 過去の API コールの動作を変更したくない場合は、このパラメーターを追加しないでください。時間制限は適用されません。 |
|
fileConstraintSize | このパラメータは常に旧 limitFileSizes より優先されます。つまり、リクエストに limitFileSizes: false と fileConstraintSize: 25 が指定された場合は、サポート zip の作成時にファイルあたり 25 MB の制限が適用されます。 |
|
サポート zip を作成する API には下位互換性があります。ただし、サポート zip のファイルサイズ制限のデフォルト値は、1 ファイルあたり 25 MB から 100 MB に変更されます。
サポート zip ファイルのダウンロード
サポート zip は、共有ホーム ディレクトリ内の場所に保存されます。このディレクトリへのアクセスが難しい場合、またはプロセスを自動化したい場合は、次のように REST API を使用してダウンロードできます。
curl -u <username>:<password> http://<base-url.example.com:8080>/rest/troubleshooting/latest/support-zip/download/<filename> -o support.zip
この例では、<filename>
が 出力されたファイル名の JIRA_jira2_support_2018-06-11-23-35-12.zip
と support.zip
になります。ノードを指定する必要はなく、リクエストのステータスを確認したときに返されるファイル名のみが必要です。
トラブルシューティング
- サポート zip を生成するには、システム管理者権限が必要です。適切な権限がない場合、リクエストは権限エラーで失敗します。
/status/clustertaskID
がノードを返さない場合、ノードが応答していないか、そのノードで zip 生成が開始されていない可能性があります。リクエストがすべてのノードに到達してプロセスが開始されるまで数分間待ち、もう一度試してみてください。- 404 エラーが表示される場合、Jira が実行中で、アトラシアン トラブルシューティングとサポート ツール アドオンの 1.10.5 以降がインストールされていることを確認してください。アプリはいつでも更新できます。アプリ更新の詳細を確認する
'
XSRF check failed'
エラーが返される場合、各リクエストにX-Atlassian-Token
ヘッダーを追加できます。値はno-check
に設定します。リクエストにこのヘッダーを追加することで、サーバー側の XSRF チェックを迂回し、リクエストを実現できます。これは Confluence の場合は必須です。例:curl -u <username>:<password> -X POST http://<app-node1.example.com:8080>/rest/troubleshooting/latest/support-zip/local -H "X-Atlassian-Token: no-check"