TECHZEN Zenoss User Community ARCHIVE  

zenJavaApp 3.0

Subject: zenJavaApp 3.0
Author: [Not Specified]
Posted: 2015-03-17 04:53

Hi all

Has anyone had success in getting the latest version (3.0) of j053ph4's very useful zenJavaApp working

Source at https://github.com/j053ph4/ZenPacks.community.zenJavaApp

After upgrading to Zenoss 4.2.5 I managed to satisfy all the required dependencies (4.2.4 doesn't work) and all my JVM's are detected, but I just can't figure out how to graph anything. From the code it seems it patches the ZenJMX template somehow but i can't figure it out.

Craig



Subject: Craig,
Author: [Not Specified]
Posted: 2015-03-17 09:09

Craig,

Are the graphs not being displayed at all There should be a monitoring template called "JavaApp" installed.

BTW, I just pushed the "3.0" up to GitHub last week and I haven't updated the Zenoss Wiki yet with the new version (so I assume you're downloading straight from GitHub) -- is it possible that i missed updating something re: Github

Also, AFAIK this should still work with 4.2.4...

If you have more details about the problem let me know I'll try to help you.

Joseph



Subject: Thanks for the prompt reply
Author: [Not Specified]
Posted: 2015-03-17 09:20

Thanks for the prompt reply Joseph!

yes, I pulled it straight from GitHub - I was having lots of problems with the last version and JVM detection. The new version with jolokia works straight out the box.

Nope, there is no monitoring template of that name installed.

The problem I had with 4.2.4 was that my installation had a missing module / method it would seem:

Welcome to the Zenoss dmd command shell!
'dmd' is bound to the DataRoot. 'zhelp()' to get a list of commands.
Use TAB-TAB to see a list of zendmd related commands.
Tab completion also works for objects -- hit tab after an object name and '.'
(eg dmd. + tab-key).
>>> from ZenPacks.community.zenJavaApp.modeler.plugins.zenJavaApp import JavaAppMap
Traceback (most recent call last):
File "", line 1, in
File "/opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/modeler/plugins/zenJavaApp/JavaAppMap.py", line 6, in
from Products.ZenModel.OSProcessMatcher import buildObjectMapData
ImportError: No module named OSProcessMatcher

When I upgraded to 4.2.5 it was available. Maybe its just my installation

Oh, also mention in your README that installers need to upgrade ConstructionKit to 3.0 :-)

Thanks for your efforts with this pack - it's really appreciated!



Subject: No that's not just your
Author: [Not Specified]
Posted: 2015-03-17 09:54

No that's not just your installation, I believe that method was introduced in 4.2.5 and I was experimenting with something in the modeler code (but that import is no longer needed).

What I was experimenting with was adding horizontal relations between the JVM and the IpService and OSProcess objects but I ended up doing it a different way (more about this later).

I'll make a note to update the README as well as removing the import

Regarding the JavaApp template, was the zenJavaApp/objects/objects.xml file included in the .zip you downloaded I just tried it and it seems to be there.

Here's what I think happened: something went wrong during the Zenpack install (probably the bad import statement) and the installer quit before the objects.xml file was parsed. I'm not sure how to load it manually other than to reinstall the Zenpack. Can you try that and let me know if that works for you

Also, thanks for the feedback! I'm glad to know it's useful to someone besides me :) The new version is MUCH faster (modeler code) and easier to use with the Jolokia dependency, and the improvements have allowed me to make several more ZenPacks that leverage it.

There's some other improvements i haven't pushed to the repo yet but I'll try to do so soon.

Joseph



Subject: I tried both to install over
Author: [Not Specified]
Posted: 2015-03-18 02:12

I tried both to install over the existing and remove and reinstall. objects.xml is present in the zip from git, but seems it never gets copied over. Sorry, but I am not very clued up on how the installation of a ZenPack executes, so I cant help more than show you what I see :(

[zenoss@beapp03 ~]$ zenpack --install ZenPacks.community.zenJavaApp
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaGarbageCollector.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaApp.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaMemoryPool.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/configure.zcml
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/__init__.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/info.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/interfaces.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/facades.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/routers.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaGarbageCollector.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaApp.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaMemoryPool.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/configure.zcml
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/__init__.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/info.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/interfaces.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/facades.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/routers.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaGarbageCollector.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaApp.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaMemoryPool.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/configure.zcml
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/__init__.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/info.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/interfaces.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/facades.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/routers.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaGarbageCollector.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaApp.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaMemoryPool.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/configure.zcml
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/__init__.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/info.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/interfaces.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/facades.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/routers.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaGarbageCollector.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaApp.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaMemoryPool.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/configure.zcml
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/__init__.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/info.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/interfaces.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/facades.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/routers.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaGarbageCollector.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaApp.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/JavaMemoryPool.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/configure.zcml
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javagarbagecollector-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javaapp-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/resources/javamemorypool-add.js
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/__init__.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/info.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/interfaces.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/facades.py
writing /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/routers.py
2015-03-17 17:52:07,726 INFO zen.HookReportLoader: Loading reports from /opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/reports
2015-03-17 17:52:07,878 INFO zen.zenhub: updating relations
2015-03-17 17:52:07,878 INFO zen.zenhub: checking for relations on JavaApp
2015-03-17 17:52:07,879 INFO zen.zenhub: will need to update component relations for JavaApp
2015-03-17 17:52:07,879 INFO zen.zenhub: checking for relations on JavaGarbageCollector
2015-03-17 17:52:07,879 INFO zen.zenhub: will need to update component relations for JavaGarbageCollector
2015-03-17 17:52:07,879 INFO zen.zenhub: checking for relations on JavaMemoryPool
2015-03-17 17:52:07,879 INFO zen.zenhub: will need to update component relations for JavaMemoryPool
2015-03-17 17:52:07,879 INFO zen.zenhub: updating relations with components=True
2015-03-17 17:52:07,880 INFO zen.zenhub: Services
2015-03-17 17:52:11,509 INFO zen.zenhub: Groups
2015-03-17 17:52:11,512 INFO zen.zenhub: Systems
2015-03-17 17:52:11,513 INFO zen.zenhub: Locations
2015-03-17 17:52:11,516 INFO zen.zenhub: Networks
2015-03-17 17:52:11,618 INFO zen.zenhub: IPv6Networks
2015-03-17 17:52:11,682 INFO zen.zenhub: Processes
2015-03-17 17:52:11,759 INFO zen.zenhub: Devices
2015-03-17 17:52:18,073 INFO zen.zenhub: not loading components

[zenoss@beapp03 objects]$ pwd
/opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/objects
[zenoss@beapp03 objects]$ ls -ltr
total 4
-rw-rw-r-- 1 zenoss zenoss 0 Mar 17 17:52 __init__.py
-rw-rw-r-- 1 zenoss zenoss 201 Mar 17 17:52 __init__.pyc

[zenoss@beapp03 objects]$ pwd
/home/zenoss/ZenPacks.community.zenJavaApp/ZenPacks/community/zenJavaApp/objects
[zenoss@beapp03 objects]$ ls -al
total 48
drwxrwxr-x 2 zenoss zenoss 4096 Feb 27 17:48 .
drwxrwxr-x 9 zenoss zenoss 4096 Feb 27 17:48 ..
-rw-rw-r-- 1 zenoss zenoss 0 Feb 27 17:48 __init__.py
-rw-rw-r-- 1 zenoss zenoss 39755 Feb 27 17:48 objects.xml

Also built an egg file and installed that way, but there too, objects.xml doesn't seem to be included in the resulting egg



Subject: Hi Joseph
Author: [Not Specified]
Posted: 2015-03-23 05:52

Hi Joseph

Tried your latest drop and it works perfectly. I just had to remove this definition else it dies.

File "/opt/zenoss/ZenPacks/ZenPacks.community.zenJavaApp-3.0-py2.7.egg/ZenPacks/community/zenJavaApp/Definition.py", line 28, in getMBeanDef
'productKey' : getProductClass('Java'),
NameError: global name 'getProductClass' is not defined

Thanks again for the efforts :-)



Subject: Hi,
Author: [Not Specified]
Posted: 2015-03-24 09:09

Hi,

Glad to hear that the latest worked for you! The "getProductClass" is something I added to the ConstructionKit (so the method depends on the latest commit version of that)..

It sounds like the problem was the missing objects.xml, but not sure what caused that to happen.

Thanks,
Joseph



< Previous
IISSite: Failed collection
  Next
Zenoss 5.0 / Importing (Vmware) Mibs
>