要让 telegraf 代理收集某些应用服务的衡量指标,您必须在端点虚拟机中进行修改。进行这些修改后,代理将开始收集衡量指标。您必须使用 SSH 连接到部署了代理的虚拟机并修改配置文件。

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 应用程序,您可以以 .WAR 文件或 .JAR 文件方式部署 Jolokia 插件。如果部署 .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 作为 JVM 输入提供给 Cassandra 数据库应用程序。完成下列步骤:
  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 即时库并将其包含在路径中。

  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 的路径。

    例如,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