2017-05-05 17 views
0

가 실제 행동 : 서버를 웹 로직에 연결하지 않습니다, 에러가 발생하고 자바 플러그인이로드되지 않습니다문제 웹 로직 데이터를 가져 오기 위해 자바 (GenericJMX) 플러그인 collectd 구성하는 동안

자바 플러그인 : cjni_create_jvm : JNI_CreateJavaVM는이 실패했습니다 상태 -1.

[2017-05-04 04:23:34] java plugin : cjni_thread_attach : cjni_create_jvm failed. [2017-05-04 04:23:34] java 플러그인 : GenericJMX' found, but no such configuration callback has been registered. Please make sure, the에 대한 구성 블록 LoadPlugin '선이 Plugin' blocks. [2017-05-04 04:23:34] java plugin: cjni_init: jvm == NULL [2017-05-04 04:23:34] Initialization of plugin java 앞에'상태 -1로 실패했습니다. 플러그인이 언로드됩니다.

단계

가 collectd.conf에 아래 변경 한 후 자바 플러그인을 사용 재현 :,

JVMArg "-Djava.class.path =/스크래치/gbuora/U00/응용 프로그램/ora_fmw/oracle/Middleware/Oracle_Home/wlserver/server/lib/wljmxclient.jar : /scratch/gbuora/u00/app/ora_fmw/oracle/Middleware/Oracle_Home/wlserver/server/lib/wlclient.jar :/opt/collectd/share/collectd/java/collectd-api.jar : /opt/collectd/share/collectd/java/generic-jmx.jar -Djmx.remote.protocol.provider.pkgs = weblogic.management.remote -Djavax.net.ssl.trustStore =/scratch/gbuora/u00/app/ora_fmw/oracle/Middleware/Oracle_Home/wlserver/server/lib/connectTrust.jks -Djavax.management.builder.initia l = weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder -Djavax.net.ssl.identityStore =/scratch/gbuora/u00/app/ora_fmw/oracle/Middleware/Oracle_Home/wlserver/server/lib/connectIdentity.jks-Djavax.net .ssl.identityStore =/scratch/gbuora/u00/app/ora_fmw/oracle/Middleware/Oracle_Home/wlserver/server/lib/connectIdentity.jks -Djava.naming.security.principal = weblogic -Djava.naming.security.credentials = welcome123 " LoadPlugin"org.collectd.java.GenericJMX "

<MBean "garbage_collector"> 
    ObjectName "java.lang:type=GarbageCollector,*" 
    InstancePrefix "gc-" 
    InstanceFrom "name" 

    <Value> 
    Type "invocations" 
    Table false 
    Attribute "CollectionCount" 
    </Value> 

    <Value> 
    Type "total_time_in_ms" 
    InstancePrefix "collection_time-" 
    Table false 
    Attribute "CollectionTime" 
    </Value> 
</MBean> 

<MBean "memory"> 
    ObjectName "java.lang:type=Memory" 
    InstancePrefix "memory-" 

    <Value> 
    Type "memory" 
    Table true 
    Attribute "HeapMemoryUsage" 
    InstancePrefix "heap-" 
    </Value> 

    <Value> 
    Type "memory" 
    Table true 
    Attribute "NonHeapMemoryUsage" 
    InstancePrefix "nonheap-" 
    </Value> 
</MBean> 

<MBean "memory_pool"> 
    ObjectName "java.lang:type=MemoryPool,*" 
    InstancePrefix "memory_pool-" 
    InstanceFrom "name" 

    <Value> 
    Type "memory" 
    Table true 
    Attribute "Usage" 
    </Value> 
</MBean> 


<Connection> 
    Host "localhost" 
    ServiceURL "t3://localhost:8001/jndi/weblogic.management.mbeanservers.domainruntime" 
    Collect "memory_pool" 
    Collect "garbage_collector" 
    Collect "memory" 
</Connection> 

다시 시작 collectd.

+0

속성을 변경 한 후에 Java 플러그인을로드 할 수 있지만 이제는 다른 오류가 발생합니다. GenericJMXConfConnection : MBean 서버 연결을 만들지 못했습니다. java.io.IOException : RMIServer 스텁을 검색하지 못했습니다. naming.NoInitialContextException : 클래스를 인스턴스화 할 수 없습니다 : weblogic.jndi.WLInitialContextFactory [루트 예외는 java.lang.ClassNotFoundException입니다 : weblogic.jndi.WLInitialContextFactory] –

+0

somemore를 변경 한 후 "GenericJMXConfConnection : MBean 서버 연결을 만들지 못했습니다 : java.io.IOException ". JVMArg "-Djava.naming.factory.initial = weblogic.jndi.WLInitialContextFactory" ServiceURL "서비스 : jmx : iiop : // localhost : 8001/jndi/weblogic.management.mbeanservers.domainruntime" –

답변

0

서비스의 로컬 호스트 이름이 jmx : iiop url이고 전체 호스트 이름이 변경되었습니다. 문제가 해결되었습니다.