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の場合:
meter-agent.zip ファイルを解凍し、クラスタ情報を含む yaml ファイルの設定を編集します。
管理者としてコマンドプロンプトを開き、以下のコマンドを入力します。
nssm.exe install “Service_Name”
NSSM サービスインストーラ画面では、[アプリケーション] タブがデフォルトで選択されています。
以下の詳細を入力します。
- [パス]:meter-agent.exe のフルパス
- [スタートアップディレクトリ]:フォルダパス
- [引数]:yaml フルネーム
- [詳細] タブをクリックします。
- 以下の詳細を入力します。
- 表示名:サービスの表示名
- 説明:サービスの説明
- セットアップの種類:自動などのセットアップの種類を選択します。
- [ログオン] タブをクリックします。
- [ローカルシステムアカウント] ラジオボタンを選択します。
- [サービスがデスクトップと対話できるようにす]る チェックボックスを選択します。
- [サービスのインストール] をクリックします。