サーバー アプリケーションで REST API を使用してサポート zip を作成する

お困りですか?

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

コミュニティに質問

サポート zip は、ご利用のアプリケーションの構成内容をアトラシアン サポートが理解し、お客様の問題を解決するうえで役立ちます。サポート zip を生成するもっとも一般的な方法はご利用のアプリケーションの管理コンソールから行うことですが、REST API を使用して zip を作成することもできます。

データセンター アプリケーション (クラスタ環境) を使用している場合、プロセスが少し異なるため、「データセンター アプリケーションで REST API を使用してサポート zip を作成する」をご参照ください。

REST を使用したサポート zip の生成オプションは、Atlassian Troubleshooting and Support Tools アドオン 1.9.1 以降を実行しているアプリケーションでのみ利用できます。このページで案内しているいくつかのオプションでは、バージョン 1.11.0 以降が必要です。

このアドオンはいつでもアップグレードできます。[アドオンの管理] に移動して"Atlassian Troubleshooting and Support Tools" を検索してください (古いバージョンを実行中の場合、"Atlassian Support Tools" である可能性があります)。 

REST API のリファレンス

次の REST エンドポイントを利用できます。

REST API説明対象

/rest/troubleshooting/latest/support-zip/local

サポート zip の作成 サーバー
/rest/troubleshooting/latest/support-zip/status/task最近のすべての zip 作成タスクのステータスを取得サーバー
/rest/troubleshooting/latest/support-zip/status/task/<taskId>特定の zip 作成タスクのステータスを取得サーバーとデータセンター 

/rest/troubleshooting/latest/support-zip/download/<filename>

サポート zip ファイルのダウンロードサーバーとデータセンター
/rest/troubleshooting/latest/support-zip/clusterクラスタの複数のノードでサポート zip を作成データセンター
/rest/troubleshooting/latest/support-zip/status/cluster/<clusterTaskId>クラスタの zip 作成タスクのステータスを取得データセンター

このページでは、curlWindows PowerShell を使用した、サーバー アプリケーションでの REST API の使用例について説明します。任意のスクリプト言語をご利用いただけます。 

データセンター固有の例については、「データセンター アプリケーションで REST API を使用してサポート zip を作成する」をご参照ください。 

サポート zip を生成する

サポート zip を生成するには、システム管理者権限が必要です。 

コマンド ラインからサポート zip を生成するには、次の手順を実行します。 

curl -u <username>:<password> -X POST http://<app-url.example.com:8080>/rest/troubleshooting/latest/support-zip/local
Windows PowerShell を使用してサポート zip を生成する...

この手順では Invoke-WebRequest が必要です。これは PowerShell v3.0 で導入されたため、Windows 8 および Windows Server 2012 以降で、既定で利用可能です。 

# Specify your username, password and Base URL (including a context path if one is being used) below
$user = '<username>'
$pass = '<password>'
$baseurl = 'http://<app-url.example.com:8080>'

# no need to change anything below this line
$pair = "$($user):$($pass)"
$encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$basicAuthValue = "Basic $encodedCreds"

$headers = @{}
$headers.Add("Authorization", $basicAuthValue)
$headers.Add("X-Atlassian-Token", "no-check")

Invoke-WebRequest -Method POST -Uri "$baseurl/rest/troubleshooting/latest/support-zip/local" -UseBasicParsing -Headers $headers

これはタスク ID と進行状況を返します。例:

{
   "taskId":"9e7b7012-0730-427b-bf85-607d15abadb5",
   "progressPercentage":0, 
   "progressMessage":"Processing"
}
Windows PowerShell を使用する場合の出力結果...
StatusCode        : 200
StatusDescription : OK
Content           : {"taskId":"9e7b7012-0730-427b-bf85-607d15abadb5","progressPercentage":0,"progressMessage":""}

タスクの進行状況を確認する

特に大規模なサイトの場合、zip の生成には時間がかかる場合があります。タスクの進行状況を確認するには、次のコマンドを実行します。

curl -u <username>:<password> http://<app-url.example.com:8080>/rest/troubleshooting/latest/support-zip/status/task/<taskId>

この例でのクラスタ ID は 9e7b7012-0730-427b-bf85-607d15abadb5 です。 

Windows PowerShell を使用してサポート zip を生成する...
# Specify your username, password and Base URL (including a context path if one is being used) below
$user = '<username>'
$pass = '<password>'
$baseurl = 'http://<app-url.example.com:8080>'
$taskid = '<taskid>'

# no need to change anything below this line
$pair = "$($user):$($pass)"
$encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$basicAuthValue = "Basic $encodedCreds"

$headers = @{}
$headers.Add("Authorization", $basicAuthValue)
$headers.Add("X-Atlassian-Token", "no-check")

(Invoke-WebRequest -Uri "$baseurl/rest/troubleshooting/latest/support-zip/status/task/$taskid" -UseBasicParsing -Headers $headers).Content

これは現在の進行状況を返します。この例では、zip は完成していて、適切なホーム ディレクトリから転送することができます。 

{
"taskId":"9e7b7012-0730-427b-bf85-607d15abadb5",
"progressPercentage":100,
"progressMessage":"Your support ZIP can be found in your home directory at: C:\\<home-directory\\export\\JIRA_support_node1_2018-04-03-11-37-37.zip or you can download a copy.",
"fileName":"JIRA_support_node1_2018-04-03-11-37-37.zip"
}


最近リクエストされたすべてのサポート zip を確認する

ノードで最近リクエストされたすべてのサポート zip の進行状況を確認するには、次のコマンドを実行します。 

curl -u <username>:<password> http://<app-url.example.com:8080>/rest/troubleshooting/latest/support-zip/status/task
Windows PowerShell を使用してサポート zip を生成する...
# Specify your username, password and Base URL (including a context path if one is being used) below
$user = '<username>'
$pass = '<password>'
$baseurl = 'http://<app-url.example.com:8080>'
# To see all, just set $taskid to empty string
$taskid= ''

# no need to change anything below this line
$pair = "$($user):$($pass)"
$encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair))
$basicAuthValue = "Basic $encodedCreds"

$headers = @{}
$headers.Add("Authorization", $basicAuthValue)
$headers.Add("X-Atlassian-Token", "no-check")

(Invoke-WebRequest -Uri "$baseurl/rest/troubleshooting/latest/support-zip/status/task/$taskid" -UseBasicParsing -Headers $headers).Content

これは、生成中の任意のサポート zip と、直前の 2 時間に生成されたものの詳細情報を返します。例:

[{
    "taskId": "36b64a49-13d2-45b6-92d5-554577649906",
    "progressPercentage": 100,
    "progressMessage": "Your support ZIP can be found in your home directory at: /<home-directory>/export/JIRA_support_node1_2018-04-03-11-37-37.zip or you can download a copy.",
    "fileName": "JIRA_support_2018-04-03-11-37-37.zip"
}, {
    "taskId": "34d7cdce-12f7-4b46-b287-5f5040f2362b",
    "progressPercentage": 100,
    "progressMessage": "Your support ZIP can be found in your home directory at: /<home-directory>/export/JIRA_support_2018-04-03-11-24-58.zip or you can download a copy.",
    "fileName": "JIRA_support_2018-04-03-11-24-58.zip"
}]

最近リクエストされたサポート zip は、現在のセッションからのみ表示されます。アプリケーションを再起動した場合、REST API で再起動前のサポート zip の詳細情報を確認することはできません。 

特定のパラメータでサポート zip を生成する

このオプションは、Atlassian Troubleshooting and Support Tools バージョン 1.11.0 以降でのみ利用できます。 

管理コンソールでサポート zip を生成した場合、含める項目や、ファイル サイズを制限するかどうかを選択できます。これは、REST API を使用して zip を生成する場合も可能です。

たとえば、ログ ファイルとヘルス チェックの結果を取得し、ファイル サイズは制限したくない場合、次のコマンドを使用できます。

curl -s -X POST -H 'Content-Type: application/json' -u <username>:<password> http://<app-url.example.com:8080>/rest/troubleshooting/latest/support-zip/local -d '{"items":["APPLICATION_LOGS", "TOMCAT_LOGS", "HEALTHCHECKS"], "limitFileSizes": false}'

(warning) Content-Type ヘッダーを追加することで json ペイロードを追加できます。これを使用して、zip に含める特定のノードまたは項目を指定できます。 

Here's a list of items you can include in your support zip, and what they're called in the UI, for reference. See Create a Support Zip for a full description of each item. 
UI での説明API フィールド既定で含まれるかどうか
認証構成
AUTH_CONFIG
はい
アプリケーション構成ファイル
APPLICATION_CONFIG
はい
アプリケーション プロパティ
APPLICATION_PROPERTIES
はい
アプリケーションのカスタマイズ
CONF_CUSTOMISATIONS
はい (Confluence)
ヘルス チェック結果
HEALTHCHECKS
はい
アプリケーション ログ
APPLICATION_LOGS
はい
キャッシュ構成
CACHE_CONFIG
はい
Fisheye / Crucible.out log
FECRU_OUT
はい (Fisheye / Crucible)
Fisheye / Crucible のプラグイン構成
FECRU_PLUGIN_STATE
はい (Fisheye / Crucible)
ローカルで変更済みのファイル
MODZ
はい (Fisheye / Crucible)
Fisheye / Crucible のプラグイン構成ファイル
PLUGIN_CONFIG
はい (Fisheye / Crucible)
スレッド ダンプ
THREAD_DUMP
いいえ
Tomcat 構成ファイル
TOMCAT_CONFIG
はい
Tomcat ログ
TOMCAT_LOGS
はい
Synchrony 設定
SYNCHRONY_CONFIG
はい (Confluence)
ファイル サイズの制限
limitFileSizes
既定で true

サポート zip をダウンロードする

このオプションは、Atlassian Troubleshooting and Support Tools バージョン 1.11.0 以降でのみ利用できます。 

サポート zip は、ホーム ディレクトリ内の場所に保存されます。このディレクトリへのアクセスが難しい場合、またはプロセスを自動化したい場合は、次のように REST API を使用してダウンロードできます。

curl -u <username>:<password> http://<app-url.example.com:8080>/rest/troubleshooting/latest/support-zip/download/JIRA_support_2018-04-03-11-24-58.zip -o support.zip

トラブルシューティング

  • サポート zip を生成するには、システム管理者権限が必要です。適切な権限がない場合、リクエストは権限エラーで失敗します。 
  • 404 エラーが表示される場合、Jira が実行中で、Atlassian Troubleshooting and Support Tools アドオンの 1.9.1 以降がインストールされていることを確認します。このプラグインはいつでも更新できます。詳細については「アプリの更新」をご参照ください。 
  • ターミナルで何も返されない場合、アプリケーションのベース URL (ロード バランサの URL) ではなく、対象のノードの URL を提供する必要がある可能性があります。 
  • ' XSRF check failed' エラーが返される場合、各リクエストに X-Atlassian-Token ヘッダーを追加できます。値は no-check に設定します。リクエストにこのヘッダーを追加することで、サーバー側の XSRF チェックを迂回し、リクエストを実現できます。例:

    curl -u <username>:<password> -X POST http://<app-node1.example.com:8080>/rest/troubleshooting/latest/support-zip/local -H "X-Atlassian-Token: no-check"


最終更新日 2018 年 6 月 14 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.