LoginSignup
1
0

Splunk Observability Cloud の API 利用の第一歩

Posted at

はじめに

システム管理者として Splunk Observability Cloud の設定を担当するかた向けに、API で作業を効率化する方法をまとめておきたいと思います。
この記事では、はじめの一歩として「認証トークンの取得手順」をまとめておきます。

記事の内容

  • コマンドで自分の認証トークンを取得する準備とサンプル
    (ブラウザで管理画面にログインせず取得する方法)

今後の設定作業では本記事の手順で取得したトークンを利用します。

参考にしたドキュメント

ドキュメントが分散していますが、認証トークンについては下記3つのページが参考になります。

設定作業用トークンについて

下記3種類のトークンがありますが、ブラウザ操作不要な「セッショントークン」を利用することにします。

ユーザーAPIアクセストークン (User API Access Token)
ブラウザでログインして自分のプロファイル画面(下図)から取得
※ログアウトすると使えなくなる
セッショントークン (session token)
コマンドでログインして取得
組織トークン (org token)
管理者が事前に作成しておくもの

管理者ユーザーのユーザーAPIアクセストークン/セッショントークンが必要な設定項目も存在します。該当する項目は こちらのドキュメント に記載されています。

準備

環境に合わせて事前に以下の項目を用意しておきます。

項目
ユーザー名 ログインに使うメールアドレス
レルム (Realm) 日本リージョンの場合は jp0
組織ID (ORG ID) 組織に紐付くID

Realm と ORG ID はプロファイル画面の Organizations タブを開くと確認できます。

トークン取得コマンド

curl コマンドのサンプルです。
(レルムが異なる場合は jp0 部分を置き換えてください)

curl -X POST "https://api.jp0.signalfx.com/v2/session" \
  -H "Content-Type: application/json" \
  -d '{
  "email": "(ユーザー名)",
  "organizationId": "(組織ID)",
  "password": "(パスワード)"
  }'

出力結果の例です。「accessToken」の値がセッショントークンで使う文字列になります。

{
  "accessToken" : "XXXXXXXXXXXXXXXXXXXX",
  "authMethod" : "UNDEFINED",
  "capabilities" : null,
  "createdBy" : "xxxxxxxxxxx",
  "createdMs" : 1714483820334,
  "disabled" : false,
  "email" : "(ユーザー名)",
  "expiryMs" : 1717075820334,
  "id" : "xxxxxxxxxxx",
  "organizationId" : "(組織ID)",
  "personaId" : "xxxxxxxxxxx",
  "readOnly" : false,
  "sessionType" : "ORG_USER",
  "updatedBy" : null,
  "updatedMs" : 1714483820334,
  "userId" : "xxxxxxxxxx",
  "userName" : null
}

※ID情報などは xxx で伏せ字に変更してます。

expiryMs はトークンの有効期限です。ミリ秒単位のUNIX時間表記なので、末尾3桁を削除して日付に変換してみると、トークン作成から30日間有効であることがわかると思います。

トークンの削除

作業完了後、しばらくトークンを使わない場合は削除しておくと安全です。
以下、トークンを削除する curl コマンドのサンプルです。

curl -X DELETE "https://api.jp0.signalfx.com/v2/session" \
  -H "Content-Type: application/json" \
  -H "X-SF-TOKEN: (先ほど取得したaccessTokenの値)"

コマンド実行が成功した場合、何も画面に出力されないので、??と思うかもしれませんが、トークンは削除され再利用できなくなってます。

おわりに

自分が引っかかったポイントもあったので、以降の作業をスムーズに進めるための最初の一歩目として情報を整理しました。この後はチャートやダッシュボード、ディテクターといった設定作業を進めていきたいと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0