11 Replies Latest reply on Apr 12, 2019 9:40 AM by Ankit Tiwari

    AppDynamics integration with Remedy AR System

    Maximilian Jost
      Share:|

      Hi

      we are trying to integrate AppDynamics with AR System.

      We thought that the best is to put the configuration into the arserver.config but somehow the new added agent doesn't work.

      I am wondering if someone has already done it or could give us some hints.

       

      Here are the settings we added ino the arserver.config file:

           jvm.option.1=-javaagent:./lib/spring-instrument-4.1.2.RELEASE.jar

           jvm.option.2=-Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl

           jvm.option.3=-Dlogback.configurationFile=file:./conf/logback_server.xml

           jvm.option.4=-Xss2M

           jvm.option.5=-XX:MetaspaceSize=512M

           jvm.option.6=-XX:MaxMetaspaceSize=1024M

           jvm.option.7=-Dcom.sun.management.jmxremote

           jvm.option.8=-Dcom.bmc.arsys.boot.flavor=server

           jvm.option.9=-XX:OnOutOfMemoryError=taskkill /PID %p /F

           jvm.option.10=-Djetty.home=./jetty

           jvm.option.11=-Dorg.eclipse.equinox.http.jetty.autostart=false

           jvm.option.12=-Dorg.osgi.framework.os.name=win32

           jvm.option.13=-XX:ErrorFile=file:./ARServer/db/arserverjvmcrash_PID%p.log

           jvm.option.14=-XX:+HeapDumpOnOutOfMemoryError

           jvm.option.15=-XX:HeapDumpPath=./Logs

           jvm.option.16=-Djava.library.path=./lib/upgradeutils/sqlauth/x64

           jvm.option.17=-Duser.country=CH

           jvm.option.18=-Duser.timezone=Europe/Zurich

           jvm.option.19=-Duser.language=de

           jvm.option.20=-XX:+UseCompressedOops

           jvm.option.21=-XX:+UseConcMarkSweepGC

           jvm.option.22=-XX:+UseParNewGC

           jvm.option.23=-Dappdynamics.agent.applicationName=ITSM_Suite_UT

           jvm.option.24=-Dappdynamics.agent.logs.dir=D:\APPL\BMC Software\ARSystem\lib\AppDynamics_Java_Agent\logs

           jvm.option.25=-Dappdynamics.agent.nodeName=App_Tier_User_1

           jvm.option.26=-Dappdynamics.agent.runtime.dir=D:\APPL\BMC Software\ARSystem\lib\AppDynamics_Java_Agent\logs

           jvm.option.27=-Dappdynamics.agent.tierName=App_Tier_User

           jvm.option.28=-Dappdynamics.controller.hostName=hostname

           jvm.option.29=-Dappdynamics.controller.port=port

           jvm.option.30=-Dappdynamics.controller.ssl.enabled=true

           jvm.option.31=-javaagent:D:\APPL\BMC Software\ARSystem\lib\AppDynamics_Java_Agent\javaagent.jar

       

      After the chages were made the AR Server is not able to start nomarly and write the following message in the armonitor log:

       

      Initializing ARMonitor Version 9.1.00 201512160229

      ******************************************************************************************

      Setting server RMI signal port as [58609]

      Binding of armonitor on port [ 58609 ] is successful.

      Initializing ProcessController, to start and monitor all the processes listed in armonitor configuration file.

      Read and start all processes listed in armonitor.cfg.

      Starting Server-Process : "D:\APPL\Java\jre8_64\bin\java" -jar "D:\APPL\BMC Software\ARSystem\arserver.jar"  -i "D:\APPL\BMC Software\ARSystem" -l "C:\Program Files\Common Files\AR System\Licenses\hostname" -m  -t

      ProcessMonitor starting process [ ARSERVER ].

      Server Statup Notification Port [ARSERVERPORT] :58613

      Install Directory resolved to[D:\APPL\BMC Software\ARSystem\lib]

      Server port socket listener initializing..

      Unable to fetch Server activity Logs.

       

      Thanks in advance for any hints or solutions

       

      Best Regards

      Maximilian

        • 1. Re: AppDynamics integration with Remedy AR System
          Juan Manuel Fraga

          Hi Maximilian,

           

          I'm trying to configure AppDynamics too, and i don't seem to be able to get it to work in that file. I have 9 jvms running on each of my dev boxes, and i've managed to configure the boot command of 7 of them:

           

          - /opt/bmc/AtriumCore/cmdb/server/bin/atriumplugin.sh has the command that starts the atrium plugin. Edit the last line of that file to add your -javaagent arguments.

          - /opt/bmc/AtriumCore/cmdb/server/bin/normeng.sh has the equivalent for the normalization engine. Edit the last line here too.

          - /opt/bmc/ARSystem/AREmail/emaild.sh for the email engine process. Edit the JAVA_OPTS line (i think it's line 9) to add your javaagent.

           

          That's three java processes. I have 4 more that are defined on /etc/arsystem/servername/armonitor.conf for startup:

           

          - The arserver process itself.

          - The approval server.

          - The FTS process (or two, depending on your FTS configuration).

          - The integrator process (kettle / data integration server).

           

          You can easily find all of those in that file and edit accordingly. This makes 7 different jvms that I'm able to monitor through AppDynamics, but I'm still missing two:

           

          - The one you mention in your post. It seems like that file contains the startup arguments for the jetty server, and options that affect the behavior of outgoing Web Service calls among other things. I've modified this file before to include a path to a java keystore, proxy information, and that sort of thing, but if I add the javaagent line to make it work through AppDynamics, the server doesn't start. I don't get the same error as you though, I get this:

           

          FATAL - Initialization of ARMonitor failed, error - Failed to start Server Process, skip starting other process.

          com.bmc.arsys.armonitor.exception.ARMonitorException: Failed to start Server Process, skip starting other process.

                  at com.bmc.arsys.armonitor.util.ProcessController.startAllProcesses(ProcessController.java:245)

                  at com.bmc.arsys.armonitor.util.ProcessController.initialize(ProcessController.java:90)

                  at com.bmc.arsys.armonitor.ARMonitorDaemon.main(ARMonitorDaemon.java:244)

           

          I've tried adding the javaagent options at the beginning of the jvm.option.x section, at the end of that section, every option in one line, every option in separate lines, and i've even tried adding the options in the jvm.argument.1=arg1 section (the very bottom) of that file. Nothing works. It either fails to start the server, or doesn't change a thing and completely skips the lines I add. I'm not sure what to do here. If you managed to get this one to work, please reply.

           

          - The last java process i'm not able to capture with appdynamics looks like this:

           

          /usr/java/jdk1.8.0_45/jre/bin/java -Xmx512m -Djava.lib.path=. -classpath .:/opt/bmc/ARSystem/bin/arapi-91_build001.jar:/opt/bmc/ARSystem/bin/log4j-1.2.17.jar:/opt/bmc/ARSystem/bin/armonitor-9.1.00-SNAPSHOT.jar com.bmc.arsys.armonitor.ARMonitorDaemon

           

          I'd say that's the armonitor process, but i can't find where is the file that has the startup command for that process. The closest thing i've found is a file called ARMonitor_Admin.sh that you can find on installdir/bin, but the line on that file ends with com.bmc.arsys.armonitor.ARMonitorAdmin instead of com.bmc.arsys.armonitor.ARMonitorDaemon. I've no idea what ARMonitorAdmin is supposed to be, but i'd love to know where to find the file that contains the armonitor startup command.

           

          By the way, i just noticed you seem to be using a windows server, but maybe some of this info helps you anyway, it's probably the same thing but with .bat files instead of .sh files. Oh and your armonitor.conf will be in installdir/conf/ instead of /etc/arsystem/servername/ i think. The rest should be the same.

           

          Regards!

          • 2. Re: AppDynamics integration with Remedy AR System
            Jamie Boley

            Maximilian Jost Did you ever get AppDyncamis running on the ARS layer?  I'm looking to install and configure AppDynamics within our 9.1.01 environment and I have it working on the midtier, but haven't tried on the ARS server yet.

            • 3. Re: AppDynamics integration with Remedy AR System
              Maximilian Jost

              Hey Juan!

              Hi Jamie!

               

              sorry for my very late answer and thanks for your posts.

              all the settings you mentioned are configurable but the main issue is that one I mentioned in my post. we couldn't still get it work but I got in touch with a BMC guy and he told that he's also doing some investigation regarding that setting and would let me know, when he found the solution.

              I mean this should or could be done by using other third party solutions and hope BMC will provide us the settings which have to be done.

              I'll update my post as soon as I got an anwers and tested it.

               

              Regards

              Maximilian

              • 5. Re: AppDynamics integration with Remedy AR System
                LJ LongWing

                I recently worked with a customer that was able to get this working with a bit of help from AppDynamics

                • 6. Re: AppDynamics integration with Remedy AR System
                  Kobus Duminy

                  Do you have any detail on how they did it and which processes they attached it to? Linux or Windows?

                  • 7. Re: AppDynamics integration with Remedy AR System
                    LJ LongWing

                    The customer is on Windows, and I believe they are attaching to the Remedy Server process, and maybe each of the plugin servers...not 100% sure though...

                    • 8. Re: AppDynamics integration with Remedy AR System
                      Maximilian Jost

                      As we do have TrueSight in house now, we'll do the monitoring with it :-)

                       

                      Thanks you all for your feedbacks

                       

                      Regards

                      Maximilian

                      • 9. Re: AppDynamics integration with Remedy AR System
                        Mark Walters

                        Maximilian Jost - I think we have had a report of one customer that got this working but I'm not sure that this has been confirmed.  In addition to the jvm.options you added to your arserverd.conf you also need to make change in the /opt/bmc/ARSystem/conf/config.properties file:

                         

                        Modify the org.osgi.framework.bootdelegation entry to this:

                         

                        org.osgi.framework.bootdelegation=\

                                sun.*, \

                                com.sun.*, \

                                org.apache.karaf.*, \

                                org.apache.xerces.*, \

                                javax.transaction, \

                                javax.transaction.*, \

                                com.singularity.*

                         

                        I'd be interested to know if this works?

                        1 of 1 people found this helpful
                        • 10. Re: AppDynamics integration with Remedy AR System
                          Eric Wuensche

                          Hi Mark Walters, although I have not started to further look into the results with AppDynamics, I can confirm, that the server is able to start with the mentioned changes in the config.properties and adding jvm.option.21=-javaagent:/opt/appdynamics/javaagent/javaagent.jar to the arserverd.conf in AR Server 18.05

                          • 11. Re: AppDynamics integration with Remedy AR System
                            Ankit Tiwari

                            Hi Maximilian,

                             

                            If you want to generate Incident in Remedy for AppDynamics alerts then you can integrate AppDynamics with Remedy using RBE Engine as well.

                             

                            Regards,

                            Ankit