若要讓 telegraf Agent (代理程式) 收集某些應用程式服務的度量,您必須在端點虛擬機器中進行修改。進行這些修改之後,Agent (代理程式) 將會開始收集度量。您必須 SSH 至您已部署 Agent (代理程式) 及修改組態檔的所在虛擬機器。

Apache HTTPD

修改 /etc/httpd/conf.modules.d/status.conf 中的可用組態檔,並啟用 HTTPD 外掛程式的 mod_status,讓代理程式能夠收集度量。
<IfModule mod_status.c>

<Location /server-status>

    SetHandler server-status

</Location>

ExtendedStatus On

</IfModule>
如果沒有組態檔,您必須建立一個組態檔。在您修改組態檔之後,使用下列命令重新啟動 HTTPD 服務:
systemctl restart httpd

Java 外掛程式

若要監控 Java 應用程式,您可以將 Jolokia 外掛程式部署為 .WAR 檔案或 .JAR 檔案。若部署 .WAR 檔案,無須重新啟動服務。

若部署 .JAR 檔案,則須在監控之 Java 程序的 JMX 引數中包含 JAR 完整檔案路徑,然後重新啟動該應用程式服務。

Nginx

將以下幾行新增至 /etc/nginx/nginx.conf 中的組態檔:
http {
    server {
        location /status {
            stub_status on;
   access_log off;
   allow all;
  }
    }
}
使用下列命令重新啟動 Nginx 服務:
systemctl restart nginx

Postgres

/var/lib/pgsql/data/pg_hba.conf 的組態檔中,將 local all postgres peer 的值變更為 local all postgres md5 並使用下列命令重新啟動服務:
sudo service postgresql restart

Cassandra 資料庫

若要監控 Cassandra 資料庫應用程式,必須納入 Jolokia jar 作為 Cassandra 資料庫應用程式的 JVM 輸入。完成下列步驟:
  1. 修改 /etc/default/cassandra
    echo "export JVM_EXTRA_OPTS=\"-javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost\"" | sudo tee -a /etc/default/cassandra
  2. 或者,您也可以修改 cassandra-env.sh 以啟用代理程式。在 cassandra-env.sh 的尾端納入下列行:
    JVM_OPTS="$JVM_OPTS -javaagent:/usr/share/java/jolokia-jvm-1.6.0-agent.jar=port=8778,host=localhost"

    查看 JVM 輸入後,重新啟動 Cassandra 服務。

Oracle 資料庫

若要監控 Oracle 資料庫,請完成下列步驟:
  1. 從下列位置下載執行個體用戶端程式庫:https://www.oracle.com/database/technologies/instant-client/downloads.html

    您必須下載 Oracle 執行個體程式庫並納入 PATH 之中。

  2. 建立使用者。
    CREATE USER <UserName> IDENTIFIED BY <yourpassword>;
     GRANT select_catalog_role TO <UserName>;
     GRANT CREATE SESSION TO <UserName>;
  3. 安裝 Python 3.6 或更新版本。
    python3 -m pip install cx_Oracle --upgrade
  4. 設定 TNS_ADMIN 的 PATH。

    例如,TNS_ADMIN 的路徑類似 c:\app\product\<version>\dbhome_1\NETWORK\ADMIN”

備註: 無法在 Linux 平台上啟動 Oracle 資料庫。

Active MQ 5.16 及更高版本

若要啟用 Active MQ 5.16 及更高版本,請完成下列步驟:

  • 導覽至 /opt/activemq/apache-activemq-5.16.0/webapps/api/WEB-INF/classes/jolokia-access.xml
  • 移除或註解下列幾行:
    <cors>
      <strict-checking/>
    </cors>
  • 重新啟動 Active MQ 服務。

MS SQL

使用者帳戶必須具有下列權限,才能使用 Telegraf 監控 MS SQL 應用程式。
USE master;
GO
CREATE LOGIN [telegraf] WITH PASSWORD = N'mystrongpassword';
GO
GRANT VIEW SERVER STATE TO [telegraf];
GO
GRANT VIEW ANY DEFINITION TO [telegraf];
GO