202 Lotus blogs updated hourly. Who will post next? Home | Blogs | Search | About 
 
Latest 7 Posts
WebSphere Liberty Profile - Customising the Logging
Thu, Dec 14th 2017 31
IBM MobileFirst 8 - Commanding the CLI
Thu, Dec 14th 2017 45
Oracle Database 11gR2 - Get the dependencies right ...
Tue, Dec 12th 2017 54
DB2 on Windows - where does the db2nodes.cfg file live ?
Thu, Dec 7th 2017 22
Windows Server 2012 - Ooops, I locked my account
Thu, Dec 7th 2017 47
Nagios and NRPE - There's more ...
Wed, Dec 6th 2017 30
Nagios Remote Plugin Executor (NRPE) and xinetd on Red Hat Enterprise Linux
Wed, Dec 6th 2017 31
Top 10
Oracle Database 11gR2 - Get the dependencies right ...
Tue, Dec 12th 2017 54
Windows Server 2012 - Ooops, I locked my account
Thu, Dec 7th 2017 47
Hmmm, macOS Sierra and XQuartz and X11
Thu, Oct 27th 2016 46
IBM MobileFirst 8 - Commanding the CLI
Thu, Dec 14th 2017 45
Executing external Python/Jython scripts from within WebSphere Application Server's wsadmin tool
Thu, Feb 27th 2014 40
Transport Layer Security (TLS) 1.2 and SoapUI
Fri, Jun 12th 2015 39
java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=com/davehay/EmployeeServlet, offset=6
Sat, Nov 8th 2014 38
Hmmmm, HTTP404 and SRVE0190E seen with IBM HTTP Server and WebSphere Application Server
Fri, Nov 14th 2014 33
"javax.net.ssl.SSLHandshakeException: no cipher suites in common" seen in WebSphere Application Server Node Agent logs
Sat, Mar 26th 2016 33
Mozilla Firefox Quantum - Suppressing Autoplay Videos
Wed, Dec 6th 2017 32


WebSphere Liberty Profile - Monitoring via JMX over REST using Jython
Twitter Google+ Facebook LinkedIn Addthis Email Gmail Flipboard Reddit Tumblr WhatsApp StumbleUpon Yammer Evernote Delicious
   

For this, I'm using two excellent IBM developerWorks articles as inspiration: -



Without reposting the entire pair of articles ( which would be a daft idea ), here's a short-cut of what I ended up doing.

For the record, I am using Liberty 17.0.0.3: -

/opt/ibm/WebSphere/Liberty/bin/server version

WebSphere Application Server 17.0.0.3 (1.0.18.cl170320170927-1854) on IBM J9 VM, version pxa6480sr3fp12-20160919_01 (SR3 FP12) (en_GB)

Java 8: -

java -fullversion

java full version JRE 1.8.0 IBM Linux build pxa6480sr3fp12-20160919_01(SR3 FP12)

and Jython 2.7.0: -


So I started by setting up the Jython runtime environment ( this is on the same Red Hat Enterprise Linux box that's hosting Liberty etc. ): -

Create the directory structure

mkdir /opt/ibm/WebSphere/Liberty/jython
cd /opt/ibm/WebSphere/Liberty/jython

Pull Jython 2.7.0

wget http://search.maven.org/remotecontent?filepath=org/python/jython-standalone/2.7.0/jython-standalone-2.7.0.jar
mv remotecontent?filepath=org%2Fpython%2Fjython-standalone%2F2.7.0%2Fjython-standalone-2.7.0.jar jython-standalone-2.7.0.jar

Copy the requisite REST Connector classes - both Jython and Java

cp /opt/ibm/WebSphere/Liberty/clients/jython/restConnector.py .
cp /opt/ibm/WebSphere/Liberty/clients/restConnector.jar .

and then started the Jython environment: -

java -cp jython-standalone-2.7.0.jar:restConnector.jar org.python.util.jython

From there, I established connectivity to my Liberty runtime: -

from restConnector import JMXRESTConnector
JMXRESTConnector.trustStore = '/opt/ibm/WebSphere/Liberty/usr/servers/defaultServer/resources/security/key.jks'
JMXRESTConnector.trustStorePassword = 'passw0rd'
connector = JMXRESTConnector()
connection = connector.connect( 'mfp.uk.ibm.com', 9443, 'appcenteradmin', 'admin')
mconnection=connector.getMBeanServerConnection()


Note that, contrary to the article, this code did not work: -

mconnection = connection.getMBeanServerConnection()

It instead returned: -

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'NoneType' object has no attribute 'getMBeanServerConnection'


However, this code DID work: -

mconnection=connector.getMBeanServerConnection()

and I was able to validate connectivity etc. : -

mconnection

com.ibm.ws.jmx.connector.client.rest.internal.RESTMBeanServerConnection@fcbd91c2

dir(mconnection)

['MBeanCount', 'PollingMode', 'ServerPollingThread', '__class__', '__copy__', '__deepcopy__', '__delattr__', '__doc__', '__ensure_finalizer__', '__eq__', '__format__', '__getattribute__', '__hash__', '__init__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__str__', '__subclasshook__', '__unicode__', 'addNotificationListener', 'class', 'createMBean', 'defaultDomain', 'domains', 'equals', 'getAttribute', 'getAttributes', 'getClass', 'getDefaultDomain', 'getDomains', 'getMBeanCount', 'getMBeanInfo', 'getObjectInstance', 'hashCode', 'invoke', 'isInstanceOf', 'isRegistered', 'notify', 'notifyAll', 'queryMBeans', 'queryNames', 'removeNotificationListener', 'setAttribute', 'setAttributes', 'toString', 'unregisterMBean', 'wait']

mconnection.getClass()

<type 'com.ibm.ws.jmx.connector.client.rest.internal.RESTMBeanServerConnection'>

The article then takes one through creating a pair of Python scripts: -

wlp_collect_conf.py
wlp_collect.py

to create an importable library of functions, including: -

connection = connect()

9443
/opt/ibm/WebSphere/Liberty/usr/servers/defaultServer/resources/security/key.jks
Connecting to the server...
Successfully connected to the server "mfp.uk.ibm.com:9443"

and: -

collect( connection, True,  "WebSphere:type=JvmStats,*")

 MBean details for WebSphere:type=JvmStats

   7 attributes
      UsedMemory [long] = 83109880
      FreeMemory [long] = 41080840
      Heap [long] = 124321792
      UpTime [long] = 22864299
      ProcessCPU [double] = 2.04226135228
      GcCount [long] = 1187
      GcTime [long] = 2457

   0 operations
array(java.lang.Object, [WebSphere:type=JvmStats])

So, in principle, I could use these via Nagios ……

That's the next step ….


---------------------
http://portal2portal.blogspot.com/2017/12/websphere-liberty-profile-monitoring.html
Dec 06, 2017
27 hits



Recent Blog Posts
31
WebSphere Liberty Profile - Customising the Logging
Thu, Dec 14th 2017 5:21p   Dave Hay
On my current engagement, we had a requirement to trim out ( temporarily ) some information log messages which were "spamming" the console.log of a WebSphere Liberty Profile (WLP) environment.Firstly, here's some context about WLP logging: -There are three primary log files for a server: • console.log - containing the redirected standard output and standard error from the JVM process. This console output is intended for direct human consumption. The console output contains major events and
45
IBM MobileFirst 8 - Commanding the CLI
Thu, Dec 14th 2017 4:29p   Dave Hay
As with many of my projects, this is another one in the category of "Tinkering".In order to better support my current client, I needed a quick-start into the world of IBM MobileFirst Platform (MFP).I've blogged about MFP before, but mainly in the context of building out a runtime on the WebSphere Liberty Platform: -WebSphere Liberty Profile - why doesn't HTTPS work ?Using Nagios to monitor IBM HTTP Server and IBM WebSphere Liberty Profilebut now I wanted to go a little bit further.I started
54
Oracle Database 11gR2 - Get the dependencies right ...
Tue, Dec 12th 2017 9:46a   Dave Hay
Having just installed Oracle 11.2 ( 11gR2 ) onto a Red Hat Enterprise Linux 7.4 VM, I was kinda getting fed up with the sqlplus command not working …..sqlplus sqlplus: error while loading shared libraries: libclntsh.so.11.1: cannot open shared object file: No such file or directoryls -al `locate libclntsh.so`-rwxrwx---. 1 oracle oracle 48797739 Dec 12 08:49 /home/oracle/app/oracle/product/11.2.0/dbhome_1/inventory/backup/2017-12-12_08-48-58AM/Scripts/ext/lib/libclntsh.so.11.1-rwxrwx---. 1 orac
22
DB2 on Windows - where does the db2nodes.cfg file live ?
Thu, Dec 7th 2017 2:13p   Dave Hay
I was briefly tinkering with the need to update the db2nodes.cfg file to help DB2 Express 11.1 cope with the hostname change of a Windows Server 2012 R2 boxen.I'd created a new VM, via OpenStack, using a snapshot from an existing VM - which I'd NOT yet deleted.Therefore, OpenStack, being the nice IaaS solution that it is, kindly helped me out by creating the new instance with a new hostname.This borked DB2, as you'd expect ….I've seen similar issues with DB2 on Linux: -SQL10003C There are
47
Windows Server 2012 - Ooops, I locked my account
Thu, Dec 7th 2017 11:59a   Dave Hay
One of my colleagues had a bad day with a shared Windows Server 2012 R2 environment, in that he locked out the main account that we use to access the box, via Remote Desktop Protocol (RDP).This is NOT an Active Directory environment, so there's no domain controller in the mix; these are merely local accounts.Thankfully, I had another account that WASN'T locked out, so I RDP'd into the box using that account and used the Advanced User Accounts Control Panel ( aka netplwiz ), which did the tric
30
Nagios and NRPE - There's more ...
Wed, Dec 6th 2017 6:25p   Dave Hay
Following on from my earlier post: -Nagios Remote Plugin Executor (NRPE) and xinetd on Red Hat Enterprise Linuxthings are starting to become more clear.As far as I can establish, on the NRPE client/agent side, we have several components at work here.So we have the NRPE agent itself, as started using xinetd : -/etc/xinetd.d/nrpe # default: on# description: NRPE (Nagios Remote Plugin Executor)service nrpe{ flags = REUSE socket_type = stream port = 5666 w
31
Nagios Remote Plugin Executor (NRPE) and xinetd on Red Hat Enterprise Linux
Wed, Dec 6th 2017 2:15p   Dave Hay
As per a few previous posts, I'm tinkering ( there's that word again, I must think of another simile ) with Nagios.This time I'm looking to have my Nagios monitoring server ( which runs on Ubuntu ) execute an agent on a remote boxen running Red Hat Enterprise Linux (RHEL).Having installed the pre-requisites ( and I do need to document those steps more clearly ), I setup a NRPE script to be started using xinetd ( A Powerful Replacement For Inetd )cat /etc/xinetd.d/nrpe # default: on# descripti
27
WebSphere Liberty Profile - Monitoring via JMX over REST using Jython
Wed, Dec 6th 2017 1:39p   Dave Hay
For this, I'm using two excellent IBM developerWorks articles as inspiration: -Retrieve performance metrics from the WebSphere Liberty profile, Part 1 - Setup and configurationRetrieve performance metrics from the WebSphere Liberty profile, Part 2 - Data collection by using JythonWithout reposting the entire pair of articles ( which would be a daft idea ), here's a short-cut of what I ended up doing.For the record, I am using Liberty 17.0.0.3: -/opt/ibm/WebSphere/Liberty/bin/server versionWebS
29
WebSphere Liberty Profile - Snooping About
Wed, Dec 6th 2017 11:51a   Dave Hay
I've written about the SuperSnoop Servlet before: -WebSphere Application Server - Binary ScannerWebSphere Liberty Profile on macOS - SuperSnoopingWebSphere Application Server 9 - Snooping AboutWebSphere Application Server - Liberty Profile - Oh, what funand it's one tool that I use, and reuse, whenever I'm testing a build of WebSphere Application Server etc.However, it niggled me that, whilst it DOES run on WebSphere Liberty Profile, it doesn't actually work.Having deployed it: -cp SuperSnoo
32
Mozilla Firefox Quantum - Suppressing Autoplay Videos
Wed, Dec 6th 2017 6:26a   Dave Hay
So I mostly love the new Firefox 57, aka Quantum, although I have a few niggles with it; my main gripe is that the LastPass plugin appears to have been totally borked.One other issue - autoplay videos :-(Given that I don't use Adobe Flash, I was somewhat grumpy to find that the BBC News site was full of videos that'd start auto-playing as soon as I hit the site.Thankfully, the internet came to the rescue - AGAINHow can I stop videos from automatically starting (autoplay)?This takes one off to




Created and Maintained by Yancy Lent - About - Planet Lotus Blog - Advertising - Mobile Edition