Icon

Comments have been closed on this page. Please use AppMon & UEM Open Q & A forum for questions about this plugin.

Overview

Monitors the Apache server status page and parses the measures presented on that page. The results are returned as measures to dynaTrace.

Plugin Details

Name

Apache Monitor Plugin

Plug-In Version

1.0.9

Compatible with

Version 1.0.5: dynaTrace 3.1.0, 3.1.1, 3.2, 3.2.1, 3.5
Version 1.0.7: dynaTrace 4
Version 1.0.8: dynaTrace 5.5

Version 1.0.9: Dynatrace >= 6.1

Author

MCG Systems - Rasmus Toelhoej

License

dynaTrace BSD

Support

Not Supported

Downloads

Apache Monitor Plugin (FastPack also available)

Key benefits

Extends performance data collection to Apache Web Server

Key features

Captures performance values exposed by the Apache mod_status module

Technical overview

Queries the mod_status page provided by the mod_status module, e.g: http://server/server-status?auto
The following counters are queried from the performance status page:

  • Total Accesses
  • Total kBytes
  • CPULoad
  • Uptime
  • ReqPerSec
  • BytesPerSec
  • BytesPerReq
  • BusyWorkers
  • IdleWorkers
  • Worker Utilization
  • Scoreboard Statuses

Install Description

  • Import the plugin on your Dynatrace Server
  • Enable mod_status on your Apache as described in the Apache Setup Guide
  • Create a Monitor in your System Profile and configure all required monitor properties
  • Create your own or use the Apache Dashboard to view the queried Apache measures

Screenshots

Showing a dashboard with some of the monitor's measures:

Known Problems

 

  1. Anonymous (login to see details)

    Some notes on testing against HTTPS, if your server is running a invalid certificate you will get this security error message.

    Short message: SSLHandshakeException
    Message: Apache page returned invalid status code: 400
    Exception:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed

    The error is thrown because your server is using a test certificate (possibly generated using keytool) rather than a certificate from a well known commercial Certification Authority such as Verisign or GoDaddy.
    Web browsers display warning dialogs in this case, but since JSSE cannot assume an interactive user is present it just throws an exception by default.
     
    I found the following work-around:
    http://blogs.sun.com/andreas/entry/no_more_unable_to_find
     
    It’s basically a program you can download and compile with a JDK (Java Development Kit).
     
    javac --g InstallCert.java
    java InstallCert hostname
     
    Copy the generated jssecacerts file to C:\Program Files\dynaTrace\dynaTrace X\jre\lib\security.
    Take a backup of cacerts and rename jssecacerts to cacerts.
    Restart the dynaTrace server service and then it should work.

    1. Anonymous (login to see details)

      That blog is no longer there. Any updated link to the program you have found?

      I will need to do this for several dozen apache hosts. Since you are replacing a cert file, is there any way to do this for all the hosts you need to add? Cert validation fails in our case because internal apaches are self signed certificates and there is a hostname mismatch (requesting directly for the host rather than the DNS name (which is in the cert) which points to a VIP on a NetScaler or an F5)

      1. Anonymous (login to see details)

        Which values are you interested in? The upcoming dynaTrace Spring Release will have built-in monitoring capabilities for Apache. You will get values like Transfere Rate, Threads (busy vs idle), # of Requests and Host CPU out of the box

        1. Anonymous (login to see details)

          Trasfer Rate, Threads, # of requests, uptime, server load. Biggest concern is number of worker threads (busy vs idle).

          1. Anonymous (login to see details)

            In case you dont get the Apache Monitoring plugin to work I would consider Spring Release - scheduled for early May

  2. Anonymous (login to see details)

    Is this plugin compatible with dynaTrace 5.5?

    It seems this plugin captures information that is not available out of the box with 5.5 (DNS time, ....)

    1. Anonymous (login to see details)

      We've uploaded a newer version that should also work with 5.5

  3. Anonymous (login to see details)

    Thank you! 

    In screen shots I saw connection metrics such as DNS time.  Will this plug in also provide those metrics or are those only available with UEM? 

    1. Anonymous (login to see details)

      These are only available with UEM as these timings are captured through the W3C timing interface within the browser

  4. Anonymous (login to see details)

    Is this plugin compatible with dynaTrace 5.6?

  5. Anonymous (login to see details)

    Hi,

    Is this plugin compatible with dynaTrace 6.1?

    Thanks.

    Regards,

    Ricardo.

    1. Anonymous (login to see details)

      It should work just fine - if you give it a try - please let us know and we will make sure to update this community page

      As an additional FYI: Dynatrace now also has Apache Web Server Agents. If you install that web server agent in apache you get most of these metrics out-of-the-box with dynatrace showing up in Process Health Dashboard

  6. Anonymous (login to see details)

    Hi,

    Does any one know why the CPU Load returns always zero? 

    How this plugin capture this metric?

     

    Thanks,

    Melory

  7. Anonymous (login to see details)

    Hi,

    An Apache server hung for an application using dynaTrace.

    We use Apache Status Monitor plugin for this server.

    The Apache server has been restarted but no metric appears from this plugin after. Indeed the connection from the collector to the Apache server was stucked.

    We had to restart the collector in order to see again some metrics.

     

    We take a look in the java code in the Apache Status Monitor plugin and no timeout is set.

    In the ApacheMonitor class, we added the following timeout :

    public Status setup(MonitorEnvironment env) throws Exception {

    Status status = new Status(Status.StatusCode.Success);

    SimpleHttpConnectionManager simplehttpconnectionmanager = new SimpleHttpConnectionManager();

    HttpConnectionManagerParams params = new HttpConnectionManagerParams();

    // set a timeout until a connection is etablished

    params.setConnectionTimeout(env.getConfigLong(CONFIG_CONNECTION_TIMEOUT).intValue());

    // set a timeout for waiting for data

    params.setSoTimeout(env.getConfigLong(CONFIG_READ_TIMEOUT).intValue());

    simplehttpconnectionmanager.setParams(params);

    httpClient = new HttpClient(simplehttpconnectionmanager);

     

    What Is your advice?

     

    I can send you the new Apache Status Monitor plugin modified by us and taking account of these timeout parameters.

    1. Anonymous (login to see details)

      Makes a lot of sense. I have two thoughts on this

      #1: you could commit that change to the github project

      #2: have you looked into our regular Apache Monitoring capability that we have with our Web Server Agents? Once you install a web server agent on Apache you get a lot of these metrics in dynatrace as well - captured from within Apache

  8. Anonymous (login to see details)

    Hi,

    Will this plugin work with 6.3.2.1101?

    Thanks

    1. Anonymous (login to see details)

      In the plugin description it says that version 1.0.9 is supported by >= 6.1. So the answer is yes! you should however also look into our web server agent that we have for Apache. it captures a lot of these metrics out-of-the-box

      andi