PostgreSQL エージェント

前提条件

  • エージェントのインストールに必要な前提条件の確認については エージェントのインストールに必要な前提条件の確認 を参照してください。
  • SixthSense コレクターの URL/IP(カスタマーサポートから提供されるテナント URL)
  • SixthSense ポータルからのアクセストークン。トークン取得については「SixthSense ポータル はじめに」の アクセストークンの取得 を参照してください。
  • PostgreSQL エージェントの最新バージョン
  • エージェントをダウンロードするためのパッケージトークン(オンボーディングチームより提供されます)

エージェントのダウンロード

Windows および Linux ベースのサーバーの場合は、以下のリンクを使用します。

curl --header "PRIVATE-TOKEN:{{TOKEN}}" --output Sixthsense-Meter-Agent.zip "https://artifacts-observability.sixthsense.rakuten.com/api/v4/projects/32/packages/generic/Meter-Agent/latest/meter-agent.zip"

PostgreSQL エージェントの設定

同じディレクトリに config.yaml ファイルを作成します。

# sixthsense-postgreSQL-agent can be configured via yaml or environment variables
#
# Note: Environment Variables are given higher priority over yaml file
#
# Following are the environment variables that can be set:
# ENV VARIABLE CORRESPONDS TO
# SS_SERVICE_NAME service_name
# SS_AUTHENTICATION authentication
# SS_BACKEND sixthsense_backend
# SS_LOGGING logging
# SS_SECURE secure
sixthsense:
service_name: <custom-service-name>
# Login to Sixthsense UI --> Go to Settings on Side Navbar --> Copy Access Token
authentication: <custom-service-authKey>
# debug|error|info
logging: info
sixthsense_backend: <custom-sixthsense_backend-url>
# For GCP: grpc-collector-observability.sixthsense.rakuten.com:443
# (One Cloud) For connectivity to backend using intra public network: 133.237.176.44:80
# (One Cloud) For connectivity to backend using onecloud private network: 100.99.116.221:80
# SSL connection with backend true|false
secure: true
# (For One Cloud) secure: false
# MY | ES | MS | CB | OR
type: PG
# cron optional
# cron: "* * * * *"
hostname: <hostIp>
port: <port> #5432
user: <user>
password: <password>
database: <database>
postgres:
# disable|enable
sslmode: disable # sslmode parameter to determine the security of the connection
isExtension : false
queryLimit: 10 #no of queries
queryThresholdTime: 1 #millisecond
note

SQL ポート、またはソケットのどちらかを使用してください。

PostgreSQL に読み取り専用の新規ユーザーを作成するには、以下のコマンドを使用します。

CREATE USER username WITH PASSWORD 'your_password';
GRANT the CONNECT access:
GRANT CONNECT ON DATABASE database_name TO username;
example:-
GRANT CONNECT ON DATABASE postgres TO sixthsense;
Then GRANT USAGE on schema:
GRANT USAGE ON SCHEMA schema_name TO username;
example:-
GRANT USAGE ON SCHEMA public TO sixthsense;
GRANt SELECT for multiple tables:
GRANT SELECT ON ALL TABLES IN SCHEMA schema_name TO username;
example:-
GRANT SELECT ON ALL TABLES IN SCHEMA public TO sixthsense;

エージェントの実行

Linuxの場合:

エージェントを実行するには、以下のコマンドを使用します。

./meter-agent ss-postgresql-config.yaml
ss-postgresql-config1.yaml...

Windowsの場合:

  1. meter-agent.zip ファイルを解凍し、クラスタ情報を含む yaml ファイルの設定を編集します。

  2. 管理者としてコマンドプロンプトを開き、以下のコマンドを入力します。

    nssm.exe install “Service_Name”

  3. NSSM サービスインストーラ画面では、[アプリケーション] タブがデフォルトで選択されています。

  4. 以下の詳細を入力します。

  • [パス]:meter-agent.exe のフルパス
  • [スタートアップディレクトリ]:フォルダパス
  • [引数]:yaml フルネーム
  1. [詳細] タブをクリックします。
  2. 以下の詳細を入力します。
  • 表示名:サービスの表示名
  • 説明:サービスの説明
  • セットアップの種類:自動などのセットアップの種類を選択します。
  1. [ログオン] タブをクリックします。
  2. [ローカルシステムアカウント] ラジオボタンを選択します。
  3. [サービスがデスクトップと対話できるようにす]る チェックボックスを選択します。
  4. [サービスのインストール] をクリックします。