API を使用した Collector のアップグレードとダウングレード
Collector をアップグレードまたはダウングレードするには、以下の HTTP エンドポイントを使用します。Collector をアップグレードするときは、ベスト プラクティスに従うことをお勧めします。
アップグレードは、自動的かつ増分的に行うことができます。この場合は、アップグレードにかかる時間が長くなることがあります。
アップグレード可能 Collector の取得
アップグレード可能な Collector を取得するリクエストを送信します。
メソッド: GET
パス: collectors/upgrades/collectors
リクエスト ヘッダ
キー | 値 |
Content-Type | application/json |
Accept | application/json |
クエリ パラメータ
パラメータ | タイプ | 必須 | デフォルト | 説明 |
toVersion | 文字列 | 不可 | 最新バージョン | アップグレード (またはダウングレード) 後の Collector ビルド。指定しない場合は最新バージョンにアップグレードされます。 |
offset | 整数 | 不可 | 0 | Collector リストのオフセット |
limit | 整数 | 不可 | 50 | 返される Collector の最大数。 |
ステータス コード
コード | テキスト | 説明 |
200 | OK | アップグレード可能 Collector が取得され、応答ペイロード内に取り込まれました。 |
415 | Unsupported Media Type (サポートされていないメディア タイプ) | Content-Type が application/json に設定されていません。 |
400 | Bad Request (無効なリクエスト) | パラメータが無効でした。 |
成功した場合の結果
アップグレード可能な Collector を含む JSON ドキュメント。
セッション例
リクエスト例:
curl -i -u "<accessId>:<accessKey>" -X GET https://api.sumologic.com/api/v1/collectors/upgrades/collectors
応答例:
{ "collectors": [ { "id": 100000000, "name": "SumoCollector_Local", "hostName": "TestHost", "timeZone": "UTC", "links": [ { "rel": "sources", "href": "/v1/collectors/100000000/sources" } ], "ephemeral": false, "sourceSyncMode": "UI", "collectorType": "Installable", "collectorVersion": "20.1-2749", "osVersion": "10.11.5", "osName": "Mac OS X", "osArch": "x86_64", "lastSeenAlive": 1465848876035, "alive": true } ] }
利用可能なビルドの取得
メソッド: GET
パス: /collectors/upgrades/targets
リクエスト ヘッダ
キー | 値 |
Content-Type | application/json |
Accept | application/json |
クエリ パラメータ
なし
ステータス コード
コード | テキスト | 説明 |
200 | OK | 応答ペイロードでビルド情報が返されました。 |
415 | Unsupported Media Type (サポートされていないメディア タイプ) | Content-Type が application/json に設定されていません。 |
成功した場合の結果
Collector ビルドのバージョンを含む JSON ドキュメントで、以下のフィールドが含まれます。
フィールド | 説明 |
version | (文字列) Collector ビルドのバージョン。 |
latest | (ブール) バージョンが最新であるかどうか。 |
セッション例
リクエスト例:
curl -i -u "<accessId>:<accessKey>" -X GET https://api.sumologic.com/api/v1/collectors/upgrades/targets
応答例:
{ "targets": [ { "version": "19.115-37", "latest": false }, ... { "version": "20.1-2749", "latest": true } ] }
アップグレードまたはダウングレード タスクの作成
メソッド: POST
パス: /collectors/upgrades
リクエスト ヘッダ
キー | 値 |
Content-Type | application/json |
Accept | application/json |
クエリ パラメータ
なし
JSON ペイロード パラメータ
パラメータ | タイプ | 必須 | デフォルト | 説明 |
collectorId | Long | はい | アップグレード (またはダウングレード) する Collector の識別子。 | |
toVersion | 文字列 | 不可 | 最新バージョン | アップグレード (またはダウングレード) 後の Collector ビルド。指定しない場合は最新バージョンにアップグレードされます。 |
ステータス コード
コード | テキスト | 説明 |
202 | Accepted (受け入れ) | アップグレード タスクが正常に作成されました。 |
415 | Unsupported Media Type (サポートされていないメディア タイプ) | Content-Type が application/json に設定されていません。 |
400 | Bad Request (無効なリクエスト) | クライアントによる一般リクエスト エラー。 |
成功した場合の結果
成功時は、新たに作成されたアップグレード タスクの ID とリンクを含む JSON ドキュメントが返されます。以降のアップグレード ステータス チェック API で使用する不明瞭な文字列です。
エラー時の結果
エラー コード 400 と以下のエラー コードが返されます。
コード | 説明 |
collector.invalid | Collector ID が指定されていない、存在しない、またはユーザに使用権限がありません。 |
collector.type.invalid | Installed Collector ではありません (Hosted Collector です)。 |
collector.not.alive | Collector が稼動していません。 |
collector.in.upgrading | Collector がアップグレード中です。 |
collector.version.invalid | アップグレード後のバージョンが指定されていないか、無効です。 |
セッション例
リクエスト例:
curl -i -u "<accessId>:<accessKey>" -H "Content-Type: application/json" -X POST -d '{"collectorId":100000000,"toVersion":"19.152-1"}' https://api.sumologic.com/api/v1/collectors/upgrades
応答例:
{ "id": "12345", "link": { "rel": "self", "href": "/v1/collectors/upgrades/12345" } }
アップグレード タスク ステータスの取得
アップグレード ジョブ ID を取得したら、ステータス エンドポイントからアップグレード タスクのステータスを取得できます。
メソッド: GET
パス: /collectors/upgrades/<upgradeTaskID>
リクエスト ヘッダ
キー | 値 |
Content-Type | application/json |
Accept | application/json |
クエリ パラメータ
パラメータ | タイプ | 必須 | 説明 |
upgradeTaskID | Long | はい | アップグレード タスクの ID。 |
ステータス コード
コード | テキスト | 説明 |
200 | OK | アップグレード タスク ステータスが応答に返されました。 |
415 | Unsupported Media Type (サポートされていないメディア タイプ) | Content-Type が application/json に設定されていません。 |
404 | Not found (見つかりません) | アップグレード タスク ID が見つかりませんでした。 |
成功した場合の結果
成功時には、アップグレード タスク ステータスを含む JSON ドキュメントが生成されます。このドキュメントには以下のフィールドが含まれます。
フィールド | 説明 |
collectorId | このアップグレード タスクの Collector ID (long 型整数)。 |
toVersion | このアップグレード タスクのターゲット バージョン (文字列)。 |
requestedTime | アップグレード タスクがリクエストされた UNIX タイムスタンプ (long 型整数)。 |
status | アップグレード タスクのステータス コード (整数): 0 - 開始されていません 1 - 保留中。アップグレードは開始されましたが、Collector からの応答がありません 2 - 成功 3 - 失敗 6 - 処理中。Collector でアップグレード処理が行われています。 |
message | 追加のメッセージ。通常は失敗した理由 (文字列)。 |
セッション例
リクエスト例:
curl -i -u "<accessId>:<accessKey>" -X GET https://api.sumologic.com/api/v1/collectors/upgrades/12345
応答例:
{ "upgrade": { "id": 12345, "collectorId": 100000000, "toVersion": "19.152-1", "requestTime": 1465855411044, "status": 2, "message": "" } }