an open source solution to application performance monitoring for java server applications

Overview

stagemonitor-h75px

Build Status OpenTracing Badge Coverage Status Maven Central Release Chat on Gitter


Stagemonitor is a Java monitoring agent that tightly integrates with time series databases like Elasticsearch, Graphite and InfluxDB to analyze graphed metrics and Kibana to analyze requests and call stacks. It includes preconfigured Grafana and Kibana dashboards that can be customized.

More Information

For more information about the project, please see http://www.stagemonitor.org

Live Demo

http://stagemonitor-demo.isys-software.de

Getting Started

Check the Installation site of the wiki

Issues

If you encounter any issues or if you have a question, don't hesitate to create an issue.

Mailing List

The mailing list can be found at https://github.com/stagemonitor/stagemonitor-mailinglist

Snapshots

Use JitPack to get the latest snapshots from master. When using gradle, add the --refresh-dependencies flag to ensure you always check for an updated snapshot version.

Build Locally

To build this project locally, clone the repo and execute ./gradlew install (Linux) gradlew.bat install (Windows) to install stagemonitor to your local maven repo (~/.m2/repository/org/stagemonitor/).

Contributing

We love contributions from the community! Please read CONTRIBUTING.md before creating a pull request.

Comments
  • Integration with Wildfly 10

    Integration with Wildfly 10

    Hi,

    I'm currently trying to integrate stagemonitor in our non-servlet application (EAR) running under Wildfly 10.0.0.Final. The EAR is composed of several EJBs remotely called using JNDI.

    So far, here is what I have done:

    • I created a new Singleton bean that call Stagemonitor.init() in a method annotated with @PostConstruct and Stagemonitor.shutDown() in a method annotated with @PreDestroy
    • I added a stagemonitor.properties file to one of my EJBs with the following content:
    stagemonitor.applicationName=MyEJB
    stagemonitor.instanceName=MyEJB
    stagemonitor.profiler.logCallStacks=true
    stagemonitor.elasticsearch.url=http://[my es url]:9200/
    stagemonitor.instrument.include=com.mymodule
    stagemonitor.instrument.jdbc.dataSource.implementations=org.apache.tomcat.jdbc.pool.DataSource, org.apache.tomcat.dbcp.dbcp.PoolingDataSource, org.apache.tomcat.jdbc.pool.DataSourceProxy, org.apache.commons.dbcp2.PoolingDataSource, org.apache.commons.dbcp.PoolingDataSource, com.mchange.v2.c3p0.AbstractPoolBackedDataSource, com.mchange.v2.c3p0.PoolBackedDataSource, com.mchange.v2.c3p0.ComboPooledDataSource, com.jolbox.bonecp.BoneCPDataSource, snaq.db.DBPoolDataSource, com.zaxxer.hikari.HikariDataSource, org.jboss.jca.adapters.jdbc.WrapperDataSource, org.springframework.jdbc.datasource.AbstractDriverBasedDataSource, org.jboss.as.connector.subsystems.datasources.WildFlyDataSource
    
    • I also added the following Maven dependencies to my EAR pom.xml:
            <dependency>
                <groupId>org.stagemonitor</groupId>
                <artifactId>stagemonitor-requestmonitor</artifactId>
                <version>0.25.0</version>
                <scope>runtime</scope>
            </dependency>
            <dependency>
                <groupId>org.stagemonitor</groupId>
                <artifactId>stagemonitor-jdbc</artifactId>
                <version>0.25.0</version>
                <scope>runtime</scope>
            </dependency>
            <dependency>
                <groupId>org.stagemonitor</groupId>
                <artifactId>stagemonitor-jvm</artifactId>
                <version>0.25.0</version>
                <scope>runtime</scope>
            </dependency>
            <dependency>
                <groupId>org.stagemonitor</groupId>
                <artifactId>stagemonitor-os</artifactId>
                <version>0.25.0</version>
                <scope>runtime</scope>
            </dependency>
    

    When I start my Wildfly server, I get the following messages related to stagemonitor:

    INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-8) WFLYJCA0005: Deploying non-JDBC-compliant driver class org.stagemonitor.core.instrument.StagemonitorRuntimeAgentAttacherDriver (version 0.0)
    INFO  [org.stagemonitor.core.Stagemonitor] (pool-9-thread-1) Measurement Session is initialized: [application=MyEJB] [instance=MyEJB] [host=some-host]
    INFO  [org.stagemonitor.core.Stagemonitor] (pool-9-thread-1) Initializing plugin JvmPlugin
    WARN  [org.stagemonitor.jvm.JvmPlugin] (pool-9-thread-1) Could not register cpu usage. (com.sun.management.OperatingSystemMXBean from [Module "deployment.bc360-server-ear-vanilla-9.0.0-SNAPSHOT.ear:main" from Service Module Loader])
    INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-3) WFLYJCA0018: Started Driver service with driver-name = bc360-server-ear-vanilla-9.0.0-SNAPSHOT.ear_org.stagemonitor.core.instrument.StagemonitorRuntimeAgentAttacherDriver_0_0
    INFO  [org.stagemonitor.core.Stagemonitor] (pool-9-thread-1) Initializing plugin JdbcPlugin
    INFO  [org.stagemonitor.core.Stagemonitor] (pool-9-thread-1) Initializing plugin WebPlugin
    INFO  [org.stagemonitor.core.Stagemonitor] (pool-9-thread-1) Initializing plugin OsPlugin
    INFO  [org.stagemonitor.core.Stagemonitor] (pool-9-thread-1) Initializing plugin CorePlugin
    INFO  [org.stagemonitor.core.CorePlugin] (pool-9-thread-1) Not sending metrics to InfluxDB (url=null, interval=60s)
    WARN  [org.stagemonitor.core.util.HttpClient$ErrorLoggingResponseHandler] (async-elasticsearch) http://[my es url]:9200/stagemonitor: 400 {"error":{"root_cause":[{"type":"index_already_exists_exception","reason":"already exists","index":"stagemonitor"}],"type":"index_already_exists_exception","reason":"already exists","index":"stagemonitor"},"status":400}
    INFO  [org.stagemonitor.core.CorePlugin] (pool-9-thread-1) Sending metrics to Elasticsearch ([http://[my es url]:9200/]) every 60s
    INFO  [org.stagemonitor.core.Stagemonitor] (pool-9-thread-1) Initializing plugin RequestMonitorPlugin
    INFO  [org.stagemonitor.core.elasticsearch.ElasticsearchClient] (elasticsearch-tasks) Deleting indices: http://[my es url]:9200/stagemonitor-requests-*,-stagemonitor-requests-2016.06.*,-stagemonitor-requests-2016.05.31,-stagemonitor-requests-2016.05.30?timeout=20m&ignore_unavailable=true
    INFO  [org.stagemonitor.core.elasticsearch.ElasticsearchClient] (elasticsearch-tasks) Deleting indices: Done http://[my es url]:9200/stagemonitor-requests-*,-stagemonitor-requests-2016.06.*,-stagemonitor-requests-2016.05.31,-stagemonitor-requests-2016.05.30?timeout=20m&ignore_unavailable=true
    INFO  [org.stagemonitor.web.configuration.ConfigurationServlet] (ServerService Thread Pool -- 94) Registering configuration Endpoint /stagemonitor/configuration. You can dynamically change the configuration by issuing a POST request to /stagemonitor/configuration?key=stagemonitor.config.key&value=configValue&stagemonitor.password=password. If the password is not set, dynamically changing the configuration is not available. The password can be omitted if set to an empty string.
    

    I then fire up my client app and perform a remote call to the bean com.mymodule.security.auth.server.LoginServiceBean (which perform JDBC requests) and then look at my Kibana. I see that the indexes [stagemonitor-metrics-]YYYY.MM.DD and [stagemonitor-requests-]YYYY.MM.DD are available but only [stagemonitor-metrics-]YYYY.MM.DD contains data. To make matters worse, the data contains only the following fields: @timestamp, _id, _index, score, _type, and measurement_type.

    What am I missing in order to get complete monitoring from stagemonitor?

    opened by domtoupin 41
  • Application keep loading & became unresponsive

    Application keep loading & became unresponsive

    Hi,

    I am using stagemonitor 0.15.2 with Spring+Hibernate+Maven. First it showed me an exception while compiling: org.stagemonitor.javassist.NotFoundException: org.jaxen.VariableContext

    After that i added dependency in pom: <dependency> <groupId>jaxen</groupId> <artifactId>jaxen</artifactId> <version>1.1.6</version> </dependency>

    Now there is no exception in console: org.stagemonitor.javassist.NotFoundException: org.jaxen.VariableContext

    But my home page is blank and keeps loading and become unresponsive. I am using 'Spring security filters', 'some custom filters' and my application a multi-tenancy application.

    Any clue ?

    opened by centire-inc 25
  • Stagemonitor no longer works under Wildfly 10 (SNAPSHOT)

    Stagemonitor no longer works under Wildfly 10 (SNAPSHOT)

    While investigating issue #189 I came across the following error when starting stagemonitor under Wildfly 10:

    ERROR [org.stagemonitor.core.Stagemonitor] (MSC service thread 1-4) Could not install class file transformer: java.lang.IllegalStateException: Could not install class file transformer
        at net.bytebuddy.agent.builder.AgentBuilder$InstallationStrategy$Default$1.onError(AgentBuilder.java:2411)
        at net.bytebuddy.agent.builder.AgentBuilder$Default.installOn(AgentBuilder.java:4968)
        at net.bytebuddy.agent.builder.AgentBuilder$Default$Delegator.installOn(AgentBuilder.java:6591)
        at org.stagemonitor.core.instrument.AgentAttacher.initByteBuddyClassFileTransformer(AgentAttacher.java:159)
        at org.stagemonitor.core.instrument.AgentAttacher.performRuntimeAttachment(AgentAttacher.java:79)
        at org.stagemonitor.core.Stagemonitor.reset(Stagemonitor.java:254)
        at org.stagemonitor.core.Stagemonitor.<clinit>(Stagemonitor.java:41)
        at org.stagemonitor.core.instrument.StagemonitorRuntimeAgentAttacherDriver.<clinit>(StagemonitorRuntimeAgentAttacherDriver.java:23)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at org.jboss.as.connector.deployers.ds.processors.DriverProcessor.deploy(DriverProcessor.java:65)
        at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.UnsupportedOperationException: class redefinition failed: attempted to change the class modifiers
        at sun.instrument.InstrumentationImpl.retransformClasses0(Native Method)
        at sun.instrument.InstrumentationImpl.retransformClasses(InstrumentationImpl.java:144)
        at net.bytebuddy.agent.builder.AgentBuilder$RedefinitionStrategy$Collector$ForRetransformation$Cumulative.apply(AgentBuilder.java:2932)
        at net.bytebuddy.agent.builder.AgentBuilder$Default.installOn(AgentBuilder.java:4964)
        ... 17 more
    

    It seems to be related to a new version of bytebuddy as reverting to bytebuddy 1.4.7 (as in version 0.27.2) fixes the problem.

    | Element | Version | | --- | --- | | Stagemonitor | 0.28.0-SNAPSHOT | | Java | "1.8.0_101" | | Wildfly | 10.0.0.Final |

    opened by domtoupin 19
  • Which .jar files need to include in non maven spring project

    Which .jar files need to include in non maven spring project

    Hi, i have a problem with implementation stagemonitor in my spring application(non maven). I added stagemonitor-web-0.15.2.jar. But when i compiling the project then it gives me this error: java.lang.NoClassDefFoundError: org.stagemonitor.core.StagemonitorPlugin

    After that i thought may be it needs stagemonitor-core-0.15.2.jar. So, i added it also. Then it started giving another error: java.lang.NoClassDefFoundError: com.codahale.metrics.SharedMetricRegistries

    So, i added metrics-core-3.0.2.jar also. But no luck !!! It keep asking me more jars.

    Please Help.

    opened by centire-inc 18
  • Add request monitor for Resteasy requests

    Add request monitor for Resteasy requests

    Adds support for monitoring Resteasy requests by looking up the jax-rs resource and class to use in determining the request name. This is the implementation for #80.

    opened by johnlcox 17
  • Kibana dashboard not working with demo application

    Kibana dashboard not working with demo application

    Hi, I am trying to install the demo project and try out various steps explained in the documentation. I am able to successfully complete step 1 (Step 1: In Browser Widget) With respect to step 2, i am not able to access Kibana dashboard

    I am using docker toolbox in windows 7. Executed below command and started all 3 services (elasticsearch, kibana, grafana) docker-compose up -d Executed docker ps It listed as below

    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c72cebdf88d8 grafana/grafana:4.3.1 "/run.sh" 7 minutes ago Up 7 minutes 0.0.0.0:3000->3000/tcp springpetclinic_grafana4_1 ef32a4d3c251 docker.elastic.co/kibana/kibana:5.4.0 "/bin/sh -c /usr/loca" 7 minutes ago Up 7 minutes 0.0.0.0:5601->5601/tcp springpetclinic_kibana5_1 70451b53e6ac docker.elastic.co/elasticsearch/elasticsearch:5.4.0 "/bin/bash bin/es-doc" 7 minutes ago Up 7 minutes 0.0.0.0:9200->9200/tcp, 9300/tcp elasticsearch

    Then i ran below command mvn tomcat7:run

    This command started the application in tomcat server.

    When i executed below URL for elasticsearch, it works fine http://192.168.99.100:9200/

    But Kibana dashboard doesnt work when i execute below URL http://192.168.99.100:5601/ (It says "this site can't be reached).

    In docker-compose.yml, i checked config option for Kibana having attribute ELASTICSEARCH_URL Original value of this is http://elasticsearch:9200 I changed it to http://localhost:9200, still didnt work I changed it to http://192.168.99.100:9200, still didnt work I changed it to http://172.18.0.2:9200, still didnt work

    NOTE: When i execute docker-compose up, i can see logs appearing for Grafana and ES. But no logs i could see for Kibana. log.txt

    Any help on this will be great.

    opened by ramesh-kothandapany 16
  • Could not get the full call stack of the request

    Could not get the full call stack of the request

    I's using the flowing configuration for my applicaion

    stagemonitor.active = true
    stagemonitor.profiler.active = true 
    stagemonitor.web.widget.enabled= true
    stagemonitor.applicationName=spring-cloud-oauth-authserver
    stagemonitor.instanceName=dev
    stagemonitor.requestmonitor.spring.monitorOnlySpringMvcRequests=trye
    stagemonitor.instrument.include=com.myhexin,org.springframework
    stagemonitor.elasticsearch.url =
    

    I have got the request Request-Analysis details as the below , anyway , the full call stack of my request(the request is an spring security oauth token endpoint) is not show in the data,is there any one could give some advise it ?

    {
      "_index": "stagemonitor-spans-2018.12.07",
      "_type": "spans",
      "_id": "anLChmcBBz8UFqKD7B9g",
      "_version": 1,
      "_score": null,
      "_source": {
        "duration_cpu_ms": 390.0025,
        "instance": "dev",
        "http.headers.accept-language": "zh-CN,zh;q=0.9",
        "tracking.unique_visitor_id": "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3",
        "http.url": "/oauth/token",
        "type": "http",
        "http.headers.accept": "*/*",
        "error": false,
        "bytes_written": 674,
        "http.headers.cache-control": "no-cache",
        "http.headers.connection": "keep-alive",
        "http.headers.host": "localhost:8085",
        "span.kind": "server",
        "host": "b2b-10-36-184",
        "http.headers.content-length": "458",
        "id": "58cdfd65262e8ec7",
        "http.headers.origin": "chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop",
        "call_tree_ascii": "----------------------------------------------------------------------\nSelftime (ms)              Total (ms)                 Method signature\n----------------------------------------------------------------------\n000470.04  100% ██████████ 000470.04  100% ██████████ POST /oauth/token\n",
        "trace_id": "58cdfd65262e8ec7",
        "method": "POST",
        "ip": "0:0:0:0:0:0:0:0",
        "http.headers.user-agent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36",
        "peer.port": 61814,
        "duration_ms": 467.5167,
        "http.headers.postman-token": "6b394258-ea32-dd20-0e68-e2f2afd8e955",
        "http.status_code": 200,
        "http.headers.accept-encoding": "gzip, deflate, br",
        "@timestamp": "2018-12-07T11:43:16.261+0800",
        "application": "spring-cloud-oauth-authserver",
        "stagemonitor.version": "0.88.9",
        "name": "POST /oauth/token",
        "http.headers.content-type": "multipart/form-data; boundary=----WebKitFormBoundaryUdckD1wPVz51XhBB",
        "parameters": [
          {
            "key": "password",
            "value": "XXXX"
          },
          {
            "key": "&scopes",
            "value": "open:crm"
          },
          {
            "key": "grant_type",
            "value": "password"
          },
          {
            "key": "username",
            "value": "13588152089"
          }
        ],
        "username": "test"
      },
      "fields": {
        "all_spans": [
          "58cdfd65262e8ec7"
        ],
        "child_spans": [
          "58cdfd65262e8ec7"
        ],
        "@timestamp": [
          "2018-12-07T03:43:16.261Z"
        ],
        "call_tree_json": [
          "{\"signature\":\"POST /oauth/token\",\"executionTime\":470044200,\"children\":[],\"ioquery\":false,\"netExecutionTime\":470044200,\"shortSignature\":null}"
        ]
      },
      "sort": [
        1544154196261,
        4
      ]
    }
    

    stagemonitor status

    System information: Java 1.8.0_111 (Oracle Corporation) The flowing plugin is used:

    <dependency>
                <groupId>org.stagemonitor</groupId>
                <artifactId>stagemonitor-logging</artifactId>
                <version>0.88.9</version>
            </dependency>
            <dependency>
                <groupId>org.stagemonitor</groupId>
                <artifactId>stagemonitor-tracing-elasticsearch</artifactId>
                <version>0.88.9</version>
            </dependency>
    
    
    opened by BinWu1989 15
  • Discussion on the Open Questions

    Discussion on the Open Questions

    Hi Felix, We have Demo on the POC, could you get some time we can have chat over here and discuss some of the doubt before giving the Demo. if you can manage some time will talk offline and discuss few things,

    Let me know if you can manage some time today.

    Thanks

    opened by dharamdas 15
  • JDBC Monitoring not work as expected

    JDBC Monitoring not work as expected

    I build rest services which are deployed in a WildFly and i want to monitor the JDBC-Calls. I use CXF as JAX-RS implementation, Spring, Spring Data JPA and Hibernate and Hikari as CP When i use Kibana i expect 1.) that there is a field in the index where the sql statement is stored - but see it only as part of the callStack image

    2.) when is look at the JDCB Dashboard i expect that i could see my queries, but all are aggregated under "CXFNonSpringServlet#invoke" image

    By the way - have used javamelody before, but our idea to integrate elasticsearch is great

    opened by torobcheh 15
  • Stagemonitor stops application processing in case it is not able to dispatch metrics to ES.

    Stagemonitor stops application processing in case it is not able to dispatch metrics to ES.

    Hi, This is pretty weird but we have noticed this on quite a few occasions now that if stagemonitor is not able to dispatch metircs to ES or if the request processing queue capacity is full the application itself stops processing any incoming request. I understand that stagemonitor processes these requests in a separate thread deamon thread however the application failures are pretty consistent with the SM request rejections.

    Stagemonitor rejects the task with following logs:-

    2016-10-18 18:39:40,977 WARN  [async-request-reporter] org.stagemonitor.core.util.ExecutorUtils |                       | - The limit of pending tasks for the executor is reached. This could be due to a unreachable service such as elasticsearch or due to a spike in incoming requests. Consider increasing the default capacity limit with the configuration key 'stagemonitor.threadPools.queueCapacityLimit'
    Task java.util.concurrent.FutureTask@6198b7f rejected from org.stagemonitor.core.util.ExecutorUtils$1@3d3e9656[Running, pool size = 1, active threads = 1, queued tasks = 10000, completed tasks = 525](thread name = async-elasticsearch)
    

    And in conjunction the application also rejects any incoming request. Currently I'm trying to replicate this scenario on my local and will update if I find any direct correlation.

    Any pointers here will be greatly appreciated. Details about the environment:- Sprint boot application with v 1.3.5, embedded undertow container deployed on EC2 machine AWS. SM queue capacity size = 10000. StageMonitor version 0.25.0

    opened by get2parag 13
  • Tracing remote calls

    Tracing remote calls

    Will I be able to trace the request flow, which would involve some remote invocations ? (I could see the support for ejbs, but how about calls made to other remote services, (e.g Webservices or REST or different classloader/container or if there would be some new threads that would be spawned) during the request execution.

    type: feature 
    opened by kishoremk 12
  • NullPointerException in version 0.89.1 - StagemonitorJdbcEventListener

    NullPointerException in version 0.89.1 - StagemonitorJdbcEventListener

    Stack-trace of the exception:

    Caused by: java.lang.NullPointerException at org.stagemonitor.jdbc.StagemonitorJdbcEventListener$MetaData.access$000(StagemonitorJdbcEventListener.java:117) at org.stagemonitor.jdbc.StagemonitorJdbcEventListener.onAfterAnyExecute(StagemonitorJdbcEventListener.java:141)

    Configuration that is causing the issue:

    stagemonitor.applicationName=OurApplicationName stagemonitor.active=false stagemonitor.web.widget.enabled=false stagemonitor.profiler.active=false stagemonitor.instanceName=OurInstanceName stagemonitor.instrument.include=com.packageone, com.packagetwo

    Current workaround:

    Add stagemonitor.profiler.jdbc.collectSql=false to the configuration


    The StagemonitorJdbcEventListener#onAfterAnyExecute method attempts to access information from dataSourceUrlMap, but that map is only populated when stagemonitor is active and the CorePlugin has been initialized (see StagemonitorJdbcEventListener#onConnectionWrapped).

    Stagemonitor being inactive should supersede the stagemonitor.profiler.jdbc.collectSql setting to ensure that StagemonitorJdbcEventListener#onAfterAnyExecute only executes when it has all the necessary data to do so. If stagemonitor is disabled, it should not be necessary to disable individual plugins.

    opened by zacharydem 0
  • URGENT!!! - Unable to see kibana/grafana dashboard for Petclinic app

    URGENT!!! - Unable to see kibana/grafana dashboard for Petclinic app

    Hello,

    I have followed your installation guide and setup docker container for elasticsearch, kibana and grafana.. When I tried to start the Petclinic app from you github I am getting following logs and I am not able to see the kibana/grafana dashboards.

    22:12:29.461 [main] WARN org.stagemonitor.tracing.soap.SoapHandlerTransformer - SoapTracingPlugin is disabled because of missing com.sun.xml.ws:jaxws-rt. If you running Java >= 11 and you want monitor SOAP Calls then make sure com.sun.xml.ws:jaxws-rt is in classpath 22:12:30.025 [main] INFO org.stagemonitor.core.Stagemonitor - Measurement Session is initialized: [application=Spring Petclinic] [instance=dev] [host=DESKTOP-RSUQE98] 22:12:30.082 [elasticsearch-tasks] INFO org.stagemonitor.core.elasticsearch.ElasticsearchClient - wait 1s until core plugin is initialized 22:12:30.088 [main] INFO org.stagemonitor.core.CorePlugin - Not sending metrics to InfluxDB (url=null, interval=60s) 22:12:30.151 [async-grafana] WARN org.stagemonitor.core.util.http.ErrorLoggingResponseHandler - http://localhost:3000/api/datasources: 403 {"message":"Permission denied"} 22:12:30.187 [async-grafana] WARN org.stagemonitor.core.util.http.ErrorLoggingResponseHandler - http://localhost:3000/api/dashboards/db: 403 {"message":"Permission denied"} 22:12:30.295 [async-grafana] WARN org.stagemonitor.core.util.http.ErrorLoggingResponseHandler - http://localhost:3000/api/dashboards/db: 403 {"message":"Permission denied"} 22:12:30.328 [async-grafana] WARN org.stagemonitor.core.util.http.ErrorLoggingResponseHandler - http://localhost:3000/api/dashboards/db: 403 {"message":"Permission denied"} 22:12:30.889 [async-grafana] WARN org.stagemonitor.core.util.http.ErrorLoggingResponseHandler - http://localhost:3000/api/dashboards/db: 403 {"message":"Permission denied"} 22:12:30.919 [async-grafana] WARN org.stagemonitor.core.util.http.ErrorLoggingResponseHandler - http://localhost:3000/api/dashboards/db: 403 {"message":"Permission denied"} 22:12:30.976 [main] INFO org.stagemonitor.alerting.AlertingPlugin - Using ElasticsearchIncidentRepository for storing incidents. 22:12:30.986 [main] INFO org.stagemonitor.web.servlet.ServletPlugin - Initializing ClientSpanExtensions [org.stagemonitor.web.servlet.eum.WeaselClientSpanExtension@8243223e] 22:12:30.986 [main] INFO org.stagemonitor.core.Stagemonitor - # stagemonitor status 22:12:30.986 [main] INFO org.stagemonitor.core.Stagemonitor - System information: Java 11.0.11 (AdoptOpenJDK) Linux 4.19.128-microsoft-standard 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - Agent attachment 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - AlertingPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - CorePlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - ElasticsearchTracingPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - JdbcPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - JvmPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - LoggingPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - OsPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - ServletPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - SoapTracingPlugin (version 0.89.0) 22:12:30.988 [main] INFO org.stagemonitor.core.Stagemonitor - OK - Startup 22:12:30.989 [main] INFO org.stagemonitor.core.Stagemonitor - OK - TracingPlugin (version 0.89.0) 22:12:30.990 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - # stagemonitor configuration, listing non-default values: 22:12:30.991 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.alerts.frequency: 10 (source: stagemonitor.properties) 22:12:30.991 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.reporting.interval.elasticsearch: 10 (source: stagemonitor.properties) 22:12:30.991 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.applicationName: Spring Petclinic (source: stagemonitor.properties) 22:12:30.991 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.instanceName: dev (source: stagemonitor.properties) 22:12:30.991 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.reporting.elasticsearch.url: http://localhost:9200 (source: stagemonitor.properties) 22:12:30.991 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.instrument.exclude: org.springframework.samples.petclinic.model (source: stagemonitor.properties) 22:12:30.992 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.instrument.include: org.springframework.samples.petclinic (source: stagemonitor.properties) 22:12:30.992 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.grafana.url: http://localhost:3000 (source: stagemonitor.properties) 22:12:30.992 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.grafana.apiKey: XXXX (source: stagemonitor.properties) 22:12:30.992 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.requestmonitor.http.parseUserAgent: true (source: stagemonitor.properties) 22:12:30.992 [main] WARN org.stagemonitor.core.configuration.ConfigurationLogger - Detected usage of deprecated configuration option 'stagemonitor.requestmonitor.http.parseUserAgent'. This option might be removed in the future. Please refer to the documentation about alternatives. 22:12:30.992 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.web.paths.excluded: /resources,/webjars,/dandelion (source: stagemonitor.properties) 22:12:30.992 [main] INFO org.stagemonitor.core.configuration.ConfigurationLogger - stagemonitor.eum.enabled: true (source: stagemonitor.properties) 22:12:31.020 [async-grafana] WARN org.stagemonitor.core.util.http.ErrorLoggingResponseHandler - http://localhost:3000/api/dashboards/db: 403 {"message":"Permission denied"} 22:12:31.085 [elasticsearch-tasks] INFO org.stagemonitor.core.elasticsearch.ElasticsearchClient - Elasticsearch Version: 5.6.0 22:12:31.087 [elasticsearch-tasks] DEBUG org.stagemonitor.core.util.VersionUtils - Parsed version: 5.6.0, got major version: 5 22:12:31.087 [elasticsearch-tasks] INFO org.stagemonitor.core.elasticsearch.ElasticsearchClient - Elasticsearch is available again. 22:12:31.087 [elasticsearch-tasks] DEBUG org.stagemonitor.core.CoreElasticsearchInitializer - creating KibanaIndexAndMapping for ES 5... The Class-Path manifest attribute in /home/sen/.m2/repository/javax/mail/mail/1.4.1/mail-1.4.1.jar referenced one or more files that do not exist: file:/home/sen/.m2/repository/javax/mail/mail/1.4.1/activation.jar 22:12:31.214 [elasticsearch-tasks] DEBUG org.stagemonitor.core.CoreElasticsearchInitializer - created KibanaIndexAndMapping for ES 5 22:12:31.215 [elasticsearch-tasks] DEBUG org.stagemonitor.core.elasticsearch.ElasticsearchClient - Sending index pattern kibana/5/stagemonitor-metrics-kibana-index-pattern.json to /.kibana/index-pattern/stagemonitor-metrics-* Exception in thread "elasticsearch-tasks" java.lang.RuntimeException: java.lang.NullPointerException at org.stagemonitor.core.elasticsearch.ElasticsearchClient.modifyIndexTemplate(ElasticsearchClient.java:249) at org.stagemonitor.core.CoreElasticsearchInitializer.manageMetricsIndex(CoreElasticsearchInitializer.java:68) at org.stagemonitor.core.CoreElasticsearchInitializer.onElasticsearchFirstAvailable(CoreElasticsearchInitializer.java:31) at org.stagemonitor.core.elasticsearch.AbstractElasticsearchInitializer.onElasticsearchAvailable(AbstractElasticsearchInitializer.java:17) at org.stagemonitor.core.elasticsearch.ElasticsearchClient$CheckEsAvailability$2.handleResponse(ElasticsearchClient.java:597) at org.stagemonitor.core.elasticsearch.ElasticsearchClient$CheckEsAvailability$2.handleResponse(ElasticsearchClient.java:573) at org.stagemonitor.core.util.http.HttpRequestBuilder$5.handleResponse(HttpRequestBuilder.java:161) at org.stagemonitor.core.util.HttpClient.send(HttpClient.java:79) at org.stagemonitor.core.elasticsearch.ElasticsearchClient$CheckEsAvailability.run(ElasticsearchClient.java:571) at java.base/java.util.TimerThread.mainLoop(Timer.java:556) at java.base/java.util.TimerThread.run(Timer.java:506) Caused by: java.lang.NullPointerException at org.stagemonitor.core.elasticsearch.ElasticsearchClient.modifyIndexTemplate(ElasticsearchClient.java:238) ... 10 more

              |\      _,,,--,,_
             /,`.-'`'   ._  \-;;,_
    

    _______ |,4- ) ) .;.(`'-' ___ __ _ ___ _______ | | '---''(/.)-'(_) | | | | | | | | | | _ | | | | | | | || | | | __ _ _ | || | | | | | | | | | | | | \ \ \
    | | | | | | | || | _ | | | \ \ \
    | | | |
    | | | || | | | | | | | ) ) ) ) |
    | || |_| ||||| |||_____| / / / / ==================================================================////

    :: Built with Spring Boot :: 2.1.6.RELEASE

    2021-05-13 22:12:31.695 INFO 7006 --- [ restartedMain] o.s.s.petclinic.PetClinicApplication : Starting PetClinicApplication on DESKTOP-RSUQE98 with PID 7006 (/home/sen/workspace/spring-petclinic/target/classes started by sen in /home/sen/workspace/spring-petclinic) 2021-05-13 22:12:31.698 INFO 7006 --- [ restartedMain] o.s.s.petclinic.PetClinicApplication : No active profile set, falling back to default profiles: default 2021-05-13 22:12:31.771 INFO 7006 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable 2021-05-13 22:12:31.772 INFO 7006 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' 2021-05-13 22:12:32.685 INFO 7006 --- [ restartedMain] o.s.j.ConnectionMonitoringTransformer : TRANSFORM DataSource com.zaxxer.hikari.HikariDataSource (DefaultConnectionMonitoringTransformer) 2021-05-13 22:12:33.411 INFO 7006 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data repositories in DEFAULT mode. 2021-05-13 22:12:33.522 INFO 7006 --- [ restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 104ms. Found 4 repository interfaces. 2021-05-13 22:12:34.345 INFO 7006 --- [ restartedMain] trationDelegate$BeanPostProcessorChecker : Bean 'org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration' of type [org.springframework.transaction.annotation.ProxyTransactionManagementConfiguration$$EnhancerBySpringCGLIB$$d60d8c34] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 2021-05-13 22:12:34.872 INFO 7006 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http) 2021-05-13 22:12:34.907 INFO 7006 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat] 2021-05-13 22:12:34.908 INFO 7006 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.21] 2021-05-13 22:12:35.080 INFO 7006 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext 2021-05-13 22:12:35.080 INFO 7006 --- [ restartedMain] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 3308 ms 2021-05-13 22:12:35.599 INFO 7006 --- [ restartedMain] org.ehcache.core.EhcacheManager : Cache 'vets' created in EhcacheManager. 2021-05-13 22:12:35.608 INFO 7006 --- [ restartedMain] org.ehcache.jsr107.Eh107CacheManager : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=urn.X-ehcache.jsr107-default-config,Cache=vets 2021-05-13 22:12:35.617 INFO 7006 --- [ restartedMain] org.ehcache.jsr107.Eh107CacheManager : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=urn.X-ehcache.jsr107-default-config,Cache=vets 2021-05-13 22:12:35.719 INFO 7006 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2021-05-13 22:12:35.728 WARN 7006 --- [ restartedMain] com.zaxxer.hikari.util.DriverDataSource : Registered driver with driverClassName=org.hsqldb.jdbcDriver was not found, trying direct instantiation. 2021-05-13 22:12:36.036 INFO 7006 --- [ restartedMain] com.zaxxer.hikari.pool.PoolBase : HikariPool-1 - Driver does not support get/set network timeout for connections. (feature not supported) 2021-05-13 22:12:36.038 INFO 7006 --- [ restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2021-05-13 22:12:36.484 INFO 7006 --- [ restartedMain] o.s.w.s.c.ConfigurationServlet : Registering configuration Endpoint /stagemonitor/configuration. You can dynamically change the configuration by issuing a POST request to /stagemonitor/configuration?key=stagemonitor.config.key&value=configValue&stagemonitor.password=password. If the password is not set, dynamically changing the configuration is not available. The password can be omitted if set to an empty string. 2021-05-13 22:12:36.493 INFO 7006 --- [ restartedMain] o.s.w.s.eum.ClientSpanJavaScriptServlet : built new end user monitoring JavaScript, size=16198 bytes, etag="ef8c5ee0" 2021-05-13 22:12:36.555 INFO 7006 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729 2021-05-13 22:12:36.713 INFO 7006 --- [ restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [ name: default ...] 2021-05-13 22:12:36.790 INFO 7006 --- [ restartedMain] org.hibernate.Version : HHH000412: Hibernate Core {5.3.10.Final} 2021-05-13 22:12:36.792 INFO 7006 --- [ restartedMain] org.hibernate.cfg.Environment : HHH000206: hibernate.properties not found 2021-05-13 22:12:36.880 INFO 7006 --- [ restartedMain] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.0.4.Final} 2021-05-13 22:12:37.112 INFO 7006 --- [ restartedMain] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.HSQLDialect 2021-05-13 22:12:38.038 INFO 7006 --- [ restartedMain] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default' 2021-05-13 22:12:38.423 INFO 7006 --- [ restartedMain] o.h.h.i.QueryTranslatorFactoryInitiator : HHH000397: Using ASTQueryTranslatorFactory 2021-05-13 22:12:38.949 INFO 7006 --- [ restartedMain] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor' 2021-05-13 22:12:39.017 WARN 7006 --- [ restartedMain] aWebConfiguration$JpaWebMvcConfiguration : spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning 2021-05-13 22:12:39.646 INFO 7006 --- [ restartedMain] o.s.b.a.e.web.EndpointLinksResolver : Exposing 15 endpoint(s) beneath base path '/manage' 2021-05-13 22:12:39.764 INFO 7006 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path '' 2021-05-13 22:12:39.766 INFO 7006 --- [ restartedMain] o.s.s.petclinic.PetClinicApplication : Started PetClinicApplication in 8.51 seconds (JVM running for 12.001) 2021-05-13 22:13:50.038 INFO 7006 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet' 2021-05-13 22:13:50.038 INFO 7006 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet' 2021-05-13 22:13:50.061 INFO 7006 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : Completed initialization in 23 ms log4j:WARN No appenders could be found for logger (freemarker.cache). log4j:WARN Please initialize the log4j system properly. WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.fasterxml.jackson.module.afterburner.util.MyClassLoader (file:/home/sen/.m2/repository/com/fasterxml/jackson/module/jackson-module-afterburner/2.9.9/jackson-module-afterburner-2.9.9.jar) to method java.lang.ClassLoader.findLoadedClass(java.lang.String) WARNING: Please consider reporting this to the maintainers of com.fasterxml.jackson.module.afterburner.util.MyClassLoader WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release

    image

    image

    image

    image

    opened by sendev1 1
  • NullPointerException disabled TracingPlugin

    NullPointerException disabled TracingPlugin

    java.lang.NullPointerException: null
    	at org.stagemonitor.tracing.TracingPlugin.isSampled(TracingPlugin.java:471) ~[stagemonitor-tracing-0.89.1.jar:0.89.1]
    	at org.stagemonitor.web.servlet.MonitoredHttpRequest.createSpan(MonitoredHttpRequest.java:110) ~[stagemonitor-web-servlet-0.89.1.jar:0.89.1]
    	at org.stagemonitor.tracing.RequestMonitor.monitor(RequestMonitor.java:102) ~[stagemonitor-tracing-0.89.1.jar:0.89.1]
    	at org.stagemonitor.web.servlet.filter.HttpRequestMonitorFilter.monitorRequest(HttpRequestMonitorFilter.java:145) ~[stagemonitor-web-servlet-0.89.1.jar:0.89.1]
    	at org.stagemonitor.web.servlet.filter.HttpRequestMonitorFilter.doMonitor(HttpRequestMonitorFilter.java:107) ~[stagemonitor-web-servlet-0.89.1.jar:0.89.1]
    	at org.stagemonitor.web.servlet.filter.HttpRequestMonitorFilter.doFilterInternal(HttpRequestMonitorFilter.java:86) ~[stagemonitor-web-servlet-0.89.1.jar:0.89.1]
    	at org.stagemonitor.web.servlet.filter.AbstractExclusionFilter.doFilter(AbstractExclusionFilter.java:66) ~[stagemonitor-web-servlet-0.89.1.jar:0.89.1]
    
    2021-05-03 12:05:43.961  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : # stagemonitor status
    2021-05-03 12:05:43.961  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : System information: Java 11.0.10 (Azul Systems, Inc.) Windows 10 10.0
    2021-05-03 12:05:43.972  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : OK   - Agent attachment 
    2021-05-03 12:05:43.972  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : OK   - CorePlugin (version 0.89.1)
    2021-05-03 12:05:43.972  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : FAIL - JdbcPlugin (disabled via configuration)
    2021-05-03 12:05:43.972  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : FAIL - JvmPlugin (disabled via configuration)
    2021-05-03 12:05:43.973  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : FAIL - SoapTracingPlugin (disabled via configuration)
    2021-05-03 12:05:43.973  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : FAIL - Startup (stagemonitor is not started)
    2021-05-03 12:05:43.973  INFO 348 --- [restartedMain] org.stagemonitor.core.Stagemonitor       : FAIL - TracingPlugin (disabled via configuration)
    2021-05-03 12:05:43.974  INFO 348 --- [restartedMain] o.s.c.configuration.ConfigurationLogger  : # stagemonitor configuration, listing non-default values:
    2021-05-03 12:05:43.974  INFO 348 --- [restartedMain] o.s.c.configuration.ConfigurationLogger  : stagemonitor.profiler.minExecutionTimePercent: 1.0 (source: stagemonitor-dev.properties)
    2021-05-03 12:05:43.974  INFO 348 --- [restartedMain] o.s.c.configuration.ConfigurationLogger  : stagemonitor.applicationName: PSE (source: stagemonitor.properties)
    2021-05-03 12:05:43.974  INFO 348 --- [restartedMain] o.s.c.configuration.ConfigurationLogger  : stagemonitor.instanceName: dev (source: stagemonitor-dev.properties)
    2021-05-03 12:05:43.975  INFO 348 --- [restartedMain] o.s.c.configuration.ConfigurationLogger  : stagemonitor.plugins.disabled: AlertingPlugin,ElasticsearchTracingPlugin,JvmPlugin,LoggingPlugin,SoapTracingPlugin,TracingPlugin,JdbcPlugin (source: stagemonitor-dev.properties)
    2021-05-03 12:05:43.975  INFO 348 --- [restartedMain] o.s.c.configuration.ConfigurationLogger  : stagemonitor.instrument.include: pse (source: stagemonitor-dev.properties)
    
    opened by cdalexndr 0
  • stagemonitor online demo not available anymore

    stagemonitor online demo not available anymore

    The stagemonitor demo at https://stagemonitor-demo.isys-software.de/ is currently unavailable. Was a great quick showcase for stagemonitor. Would be great if there would be an working online demo again.

    opened by feststelltaste 0
  • Not able to configure stagemonitor without modifying the application

    Not able to configure stagemonitor without modifying the application

    I am not able to install/configure stagemonitor on my app without modifying the application, I followed the same commands as mentioned here: https://github.com/stagemonitor/stagemonitor/wiki/Step-1%3A-In-Browser-Widget#install-stagemonitor-without-modifying-the-application

    Steps followed:

    • Copy pasted my App in tomcat/web-apps folder
    • tomcat/web-apps/MyApp/WEB-INF/lib has the following 6 stagemonitor jars (configuration, core, jdbc, jvm, tracing, web-servlet) all version - 0.89.1
    • Created setenv.bat inside tomcat/bin folder with below line: set CATALINA_OPTS=%CATALINA_OPTS% -Dstagemonitor.applicationName=MyApp -Dstagemonitor.instanceName=dev -Dstagemonitor.instrument.include=com.package.name
    • Ran startup.bat

    Now application starts, but stagemonitor doesn't shows up. What am I missing/doing wrong. Thanks -Veer

    opened by Veer-N 1
Releases(0.89.1)
  • 0.89.1(Apr 6, 2020)

    Improvements

    • allowing customize delimiter of ListValueConverter or SetValueConverter (#469)
    • upgraded eum server to spring boot 2.1.7
    • upgraded gradle-versions-plugin to 0.22.0

    Bug fixes

    • set correct current configuration source name (#474)
    Source code(tar.gz)
    Source code(zip)
  • 0.88.10(Sep 5, 2019)

    Improvements

    • make ConfigurationOption thread safe #466
    • upgraded byte buddy to 1.9.15 #448
    • switch to java 8 as minimum #453
    • upgraded weasel
    • upgraded eum server to spring boot 2.1.7
    • remove the sun.misc.Unsafe usage #452
    • added Elasticsearch 7 support
    • #455 test if com.sun.xml.ws:jaxws-rt is present #462

    Important Information

    This version implements open tracing api 0.31.0, whereas Release 0.89.0 uses open tracing api 0.33.0

    Source code(tar.gz)
    Source code(zip)
  • 0.89.0(Aug 17, 2019)

    Improvements

    • upgraded byte buddy to 1.9.15 #448
    • upgrade to open tracing api 0.33.0, jaeger 0.35.5 #449
    • switch to java 8 as minimum #453
    • upgraded weasel
    • upgraded eum server to spring boot 2.1.7
    • remove the sun.misc.Unsafe usage #452
    • added Elasticsearch 7 support
    • #455 test if com.sun.xml.ws:jaxws-rt is present (#462)
    Source code(tar.gz)
    Source code(zip)
  • 0.87.16(May 13, 2019)

  • 0.88.9(Nov 28, 2018)

    Improvements

    • added new config param stagemonitor.eum.maxLengthForImgRequest
    • added new config param stagemonitor.eum.disableResourceTimingTransmission
    • updated weasel script
    Source code(tar.gz)
    Source code(zip)
  • 0.87.15(Nov 28, 2018)

    Improvements

    • added new config param stagemonitor.eum.maxLengthForImgRequest
    • added new config param stagemonitor.eum.disableResourceTimingTransmission
    • updated weasel script
    Source code(tar.gz)
    Source code(zip)
  • 0.88.8(Sep 28, 2018)

  • 0.87.14(Sep 28, 2018)

  • 0.88.7(Sep 21, 2018)

  • 0.88.6(Sep 14, 2018)

  • 0.88.5(Sep 13, 2018)

    Bug fixes

    • Fixed issue with getting stagemonitor version from jar

    Improvements

    • upgraded weasel #426
    • enable clientspan metatdata for all request types (#418)
    • upgraded jaeger to 0.31.0
    • upgraded resteasy to 3.1.4.Final
    • Performance: Reuse Jackson write buffers by closing JsonGenerator when writing metrics to Elasticsearch, #421

    Internal

    • Update to gradle 4.10
    Source code(tar.gz)
    Source code(zip)
  • 0.87.13(Sep 13, 2018)

    Bug fixes

    • Fixed issue with getting stagemonitor version from jar

    Improvements

    • upgraded jaeger to 0.31.0
    • upgraded resteasy to 3.1.4.Final
    • Performance: Reuse Jackson write buffers by closing JsonGenerator when writing metrics to Elasticsearch, #421

    Internal

    • Update to gradle 4.10
    Source code(tar.gz)
    Source code(zip)
  • 0.87.12(Aug 10, 2018)

  • 0.87.11(Jun 7, 2018)

  • 0.88.4(Apr 26, 2018)

  • 0.87.10(Apr 26, 2018)

  • 0.88.3(Apr 4, 2018)

    Bug fixes

    • removed RuntimeException to make stagemonitor more robust
    • Adding a cache to monitor manually causes a NullPointerException when EhCachePlugin is not initialized #394
    Source code(tar.gz)
    Source code(zip)
  • 0.87.9(Apr 4, 2018)

    Bug fixes

    • removed RuntimeException to make stagemonitor more robust
    • Adding a cache to monitor manually causes a NullPointerException when EhCachePlugin is not initialized #394
    Source code(tar.gz)
    Source code(zip)
  • 0.87.8(Mar 12, 2018)

    Bug fixes

    • fixed encoding issue in elasticsearch url property (#393).

    Breaking changes

    • The authentication information must be in application/x-www-form-urlencoded format for stagemonitor.reporting.elasticsearch.url.
    Source code(tar.gz)
    Source code(zip)
  • 0.88.2(Mar 9, 2018)

    Bug fixes

    • suppress warning if Elasticsearch configuration source is not available
    • fix discarding of end user monitoring spans with invalid data
    • mask authentication information in exception

    Improvements

    • improve end user monitoring logging on bound violation
    • added new config params for elasticsearch username and password (#390)
    Source code(tar.gz)
    Source code(zip)
  • 0.87.7(Mar 9, 2018)

    Bug fixes

    • suppress warning if Elasticsearch configuration source is not available
    • fix discarding of end user monitoring spans with invalid data
    • mask authentication information in exception

    Improvements

    • improve end user monitoring logging on bound violation
    • added new config params for elasticsearch username and password (#390)
    Source code(tar.gz)
    Source code(zip)
  • 0.88.1(Mar 2, 2018)

    Bug fixes

    • added null check for configurationPasswordChecker #387
    • fixed possible NullPointerException in ElasticsearchClient

    Improvements

    • Update spring boot to 2.0.0.RELEASE in EUM server
    • Update jaeger to 0.24.0, opentracing to 0.31.0 #376

    Internal

    • Update gradle to 4.5.1
    Source code(tar.gz)
    Source code(zip)
  • 0.87.6(Mar 1, 2018)

    Bug fixes

    • added null check for configurationPasswordChecker #387
    • fixed possible NullPointerException in ElasticsearchClient

    Improvements

    • Update spring boot to 2.0.0.RC2 in EUM server
    Source code(tar.gz)
    Source code(zip)
  • 0.87.5(Feb 20, 2018)

    Bug fixes

    • fix init issue that causes problems with Elasticsearch reporter #386
    • always schedule metrics index management #384

    Improvements

    • update to spring boot 2.0.0.RC1 #383
    Source code(tar.gz)
    Source code(zip)
  • 0.87.4(Feb 15, 2018)

    Bug fixes

    • fix timing.load and timing.resource #380
    • improved logging, getClass().getSimpleName() returns empty string if underlying class is anonymous #381
    Source code(tar.gz)
    Source code(zip)
  • 0.87.3(Feb 2, 2018)

    Bug fixes

    • Property stagemonitor.elasticsearch.init=false prevents initialization of ElasticsearchReporter #369

    Improvements

    • ElasticSearchReporter could use the index's bulk endpoint instead of using the general one #370
    • added user-agent header to span
    Source code(tar.gz)
    Source code(zip)
  • 0.87.2(Jan 17, 2018)

    Bug fixes

    • Fix ElasticsearchClient#checkEsAvailability

    Features

    • Introduced configuration option stagemonitor.elasticsearch.init Set to true if stagemonitor should initialize the required indices and Dashboards. If you don't want to grant the stagemonitor X-Pack Security user the permission to create indices and to access the .kibana index, set this to false and use the init tool https://github.com/stagemonitor/stagemonitor-elasticsearch-init.
    Source code(tar.gz)
    Source code(zip)
  • 0.87.1(Jan 16, 2018)

    Bug Fixes

    • Add Elasticsearch credentials when retrieving JSON ElasticsearchClient#getJson did not add basic auth information This leads to 401 errors when using a secured ES installation
    • Correct order of ElasticsearchAvailabilityObservers (order was reversed previously)
    Source code(tar.gz)
    Source code(zip)
  • 0.87.0(Jan 16, 2018)

    Bug Fixes

    • Only index spans if field mapping was created by stagemonitor #347
    • SoapHandlerTransformer previously required excessive type hierarchy matching which could lead to OutOfMemoryErrors
    • Remove credentials from URLs when making HTTP calls. This way the credentials don't show up in Exception messages. The credentials are now only transmitted via the Authorization header.
    • ES credentials exposed in exception log #362

    Improvements

    • Added support for Elasticsearch 6.x
    Source code(tar.gz)
    Source code(zip)
  • 0.86.2(Jan 11, 2018)

    Bug Fixes

    • SoapHandlerTransformer previously required excessive type hierarchy matching which could lead to OutOfMemoryErrors
    • Remove credentials from URLs when making HTTP calls. This way the credentials don't show up in Exception messages. The credentials are now only transmitted via the Authorization header.
    Source code(tar.gz)
    Source code(zip)
JavaMelody : monitoring of JavaEE applications

JavaMelody The goal of JavaMelody is to monitor Java or Java EE applications in QA and production environments. See the Project Home, Screenshots, Use

null 2.7k Dec 28, 2022
Sentry is cross-platform application monitoring, with a focus on error reporting.

Users and logs provide clues. Sentry provides answers. What's Sentry? Sentry is a developer-first error tracking and performance monitoring platform t

Sentry 33k Jan 9, 2023
Automon combines the power of AOP (AspectJ) with monitoring or logging tools you already use to declaratively monitor your Java code, the JDK, and 3rd party libraries.

Automon Automon combines the power of AOP (AspectJ) with monitoring tools or logging tools that you already use to declaratively monitor the following

Steve Souza 561 Nov 27, 2022
A lightweight platform monitoring tool for Java VMs

Sysmon - lightweight platform monitoring for Java VMs Sysmon is a lightweight platform monitoring tool. It's designed to gather performance data (CPU,

Palantir Technologies 152 Jan 26, 2022
Sematext Monitoring Agent

Sematext App Agent This repository contains the source code for Sematext App Agent. Sematext App Agent can be used to collect application metrics from

Sematext Group, Inc. 20 Sep 3, 2022
APM, (Application Performance Management) tool for large-scale distributed systems.

Visit our official web site for more information and Latest updates on Pinpoint. Latest Release (2020/01/21) We're happy to announce the release of Pi

null 12.6k Jan 4, 2023
Prometheus instrumentation library for JVM applications

Prometheus JVM Client It supports Java, Clojure, Scala, JRuby, and anything else that runs on the JVM. Table of Contents Using Assets Javadocs Instrum

Prometheus 1.9k Jan 5, 2023
:chart_with_upwards_trend: Capturing JVM- and application-level metrics. So you know what's going on.

Metrics ?? Capturing JVM- and application-level metrics. So you know what's going on. For more information, please see the documentation Versions Vers

Dropwizard 7.7k Jan 1, 2023
Distributed Tracing, Metrics and Context Propagation for application running on the JVM

Kamon Kamon is a set of tools for instrumenting applications running on the JVM. The best way to get started is to go to our official Get Started Page

Kamon Open Source Project 1.4k Dec 25, 2022
Jaeger Bindings for Java OpenTracing API

Jaeger's Tracing Instrumentation Library for Java Intended to be used with Jaeger backend, but can also be configured to send traces to Zipkin. Implem

Jaeger - Distributed Tracing Platform 485 Dec 5, 2022
inspectIT is the leading Open Source APM (Application Performance Management) tool for analyzing your Java (EE) applications.

?? inspectIT OpenCensus Edition has been released ?? The inspectIT OCE project provides an improved Java agent newly developed from scratch focusing o

inspectIT 531 Dec 13, 2022
Apache JMeter - An Open Source Java application designed to measure performance and load test applications

An Open Source Java application designed to measure performance and load test applications. By The Apache Software Foundation What Is It? Apache JMete

The Apache Software Foundation 6.7k Jan 1, 2023
:fire: Seata is an easy-to-use, high-performance, open source distributed transaction solution.

Seata: Simple Extensible Autonomous Transaction Architecture What is Seata? A distributed transaction solution with high performance and ease of use f

Seata 23.2k Jan 2, 2023
Two Spring-boot applications registering themselves to an spring-boot-admin-server application as separate clients for the purpose of monitoring and managing the clients

Spring-boot-admin implementation with 1 Server and 2 clients Creating a Server application to monitor and manage Spring boot applications (clients) un

null 6 Dec 6, 2022
OpenMap is an Open Source JavaBeans-based programmer's toolkit. Using OpenMap, you can quickly build applications and applets that access data from legacy databases and applications.

$Source: /cvs/distapps/openmap/README,v $ $RCSfile: README,v $ $Revision: 1.11 $ $Date: 2002/11/06 19:11:02 $ $Author: bmackiew $ OpenMap(tm) What

OpenMap 65 Nov 12, 2022
The Apache Software Foundation 605 Dec 30, 2022
APM, Application Performance Monitoring System

Apache SkyWalking SkyWalking: an APM(application performance monitor) system, especially designed for microservices, cloud native and container-based

The Apache Software Foundation 21k Jan 9, 2023
Payara Server is an open source middleware platform that supports reliable and secure deployments of Java EE (Jakarta EE) and MicroProfile applications in any environment: on premise, in the cloud or hybrid.

Payara Platform Community Edition Create. Innovate. Elevate. Payara Platform Community Edition features open source server runtimes for development pr

Payara Foundation 847 Dec 27, 2022
💥 Crasher - open source dump/crash server for different programming languages (used for crash analysis in various applications)

Crashser Crasher - open source dump/crash server for different programming languages (used for crash analysis in various applications). Supported lang

Balun Vladimir 14 Oct 6, 2022
DataLink is a new open source solution to bring Flink development to data center.

DataLink 简介 DataLink 是一个创新的数据中台解决方案,它基于 SpringCloud Alibaba 和 Apache Flink 实现。它使用了时下最具影响力的实时计算框架Flink,而且紧跟社区发展,试图只通过一种计算框架来解决离线与实时的问题,实现Sql语义化的批流一体,帮助

null 50 Dec 28, 2022