【问题标题】:Enable JMX beans on Passenger Enterprise 5.0.4在 Passenger Enterprise 5.0.4 上启用 JMX bean
【发布时间】:2015-03-26 18:10:38
【问题描述】:

你好,stackoverflow 的仁慈社区, 我有一个在 Red hat、Nginx、Jruby with sinatra 和 Passenger Enterprise 上运行的 Web 服务堆栈。我的最终目标是启用可以推送到我的 App Dynamics 控制器(由 SaaS 托管)中的 JMX 指标。

App Dynamics 安装相对容易配置,但指标未通过。我认为 JMX 未启用,我正在尝试找到初始化 JVM 以供客运企业启动 java 的脚本。我一直未能成功跟踪在何处输入附加参数以启用 JMX。

这是我目前所有的java应用程序

root     19260     1  0 Mar20 ?        00:05:12 /usr/lib/jvm/jre/bin/java -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/jruby-1.7.12/lib/jni -Xbootclasspath/a:/opt/jruby-1.7.12/lib/jruby.jar -classpath : -Djruby.home=/opt/jruby-1.7.12 -Djruby.lib=/opt/jruby-1.7.12/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main mojo_copytruncate.rb
nobody   20996 20861  4 17:02 ?        00:02:42 java -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/jruby-1.7.12/lib/jni -Xbootclasspath/a:/opt/jruby-1.7.12/lib/jruby.jar -classpath : -Djruby.home=/opt/jruby-1.7.12 -Djruby.lib=/opt/jruby-1.7.12/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main /opt/passenger/passenger-enterprise-server-5.0.4/helper-scripts/rack-loader.rb

我感兴趣的是从 rack-loader.rb 获取 JMX 指标。

这是我追溯 PPID 20861 时的过程

root     20861 20858  0 17:02 ?        00:00:09 PassengerAgent server
nobody   20996 20861  4 17:02 ?        00:02:42 java -Xmx500m -Xss2048k -Djffi.boot.library.path=/opt/jruby-1.7.12/lib/jni -Xbootclasspath/a:/opt/jruby-1.7.12/lib/jruby.jar -classpath : -Djruby.home=/opt/jruby-1.7.12 -Djruby.lib=/opt/jruby-1.7.12/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main /opt/passenger/passenger-enterprise-server-5.0.4/helper-scripts/rack-loader.rb

我不知道在哪里可以找到PassengerAgent 服务器中的配置...

【问题讨论】:

    标签: java passenger jruby jmx appdynamics


    【解决方案1】:

    找到了我自己的解决方案。

    由于PassengerAgent 使用名为rack-loader.rb 的ruby 脚本启动,所以每当使用RVM 时,我都应该附加Java 代理。这个解决方案适合我的场景,因为我们的堆栈完全基于 Ruby,并且没有其他任何东西可以运行 RVM。 为了传递 java 代理,我在 /etc/profile.d/ 文件夹中创建了一个名为 appdynamics.sh 的脚本。

    我在里面写了

    export AGENT_HOME=YOUR_AGENT_FILE_PATH.jar
    export JRUBY_OPTS=-J-javaagent:$AGENT_HOME
    

    重启你的终端,它应该把它作为环境变量加载。指标很好。

    【讨论】:

      猜你喜欢
      • 2016-05-03
      • 1970-01-01
      • 1970-01-01
      • 2018-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-07
      相关资源
      最近更新 更多