Giter VIP home page Giter VIP logo

wavefront-runtime-sdk-jvm's Introduction

Wavefront JVM SDK build status Released Version

The Wavefront by VMware JVM SDK provides out of the box metrics for the Java Virtual Machine (JVM) that runs your Java application. You can analyze the data in Wavefront to better understand how your application is performing in production.

Maven

If you are using Maven, add the following maven dependency to your pom.xml:

<dependency>
    <groupId>com.wavefront</groupId>
    <artifactId>wavefront-runtime-sdk-jvm</artifactId>
    <version>$releaseVersion</version>
</dependency>

Replace $releaseVersion with the latest version available on maven.

Set Up a WavefrontJvmReporter

This SDK provides a WavefrontJvmReporter for collecting JVM metrics.

To create a WavefrontJvmReporter:

  1. Create an ApplicationTags instance, which specifies metadata metadata about your application.
  2. Create a WavefrontSender for sending data to Wavefront.
  3. Create a WavefrontJvmReporter instance.

For the details of each step, see the sections below.

1. Set Up Application Tags

The application tags determine the metadata (point tags) that are included with the JVM metrics reported to Wavefront. These tags enable you to filter and query the reported JVM metrics in Wavefront.

You encapsulate application tags in an ApplicationTags object. See Instantiating ApplicationTags for details.

2. Set Up a WavefrontSender

A WavefrontSender object implements the low-level interface for sending data to Wavefront. You can choose to send data using either the Wavefront proxy or direct ingestion.

  • If you have already set up a WavefrontSender for another SDK that will run in the same JVM, use that one. (For details about sharing a WavefrontSender instance, see Share a WavefrontSender.)

  • Otherwise, follow the steps in Set Up a WavefrontSender.

3. Create the WavefrontJvmReporter

A WavefrontJvmReporter reports metrics to Wavefront.

To build a WavefrontJvmReporter, you must specify:

  • An ApplicationTags object.
  • A WavefrontSender object.

You can optionally specify:

  • A nondefault source for the reported data. If you omit the source, the host name is automatically used. The source should be identical across all the Wavefront SDKs running in the same JVM.
  • A nondefault reporting interval, which controls how often data is reported to the WavefrontSender. The reporting interval determines the timestamps on the data sent to Wavefront. If you omit the reporting interval, data is reported once a minute.
ApplicationTags applicationTags = buildTags(); // pseudocode; see above
WavefrontSender wavefrontSender = buildWavefrontSender(); // pseudocode; see above

// Create WavefrontJvmReporter.Builder using applicationTags
WavefrontJvmReporter.Builder wfJvmReporterBuilder = new WavefrontJvmReporter.Builder(applicationTags);

// Optionally set the source name to "mySource" for your metrics and histograms.
// Omit this statement to use the host name.
wfJvmReporterBuilder.withSource("mySource");

// Optionally change the reporting interval to 30 seconds. Default is 1 minute.
wfJvmReporterBuilder.reportingIntervalSeconds(30);

// Create a WavefrontJvmReporter with the WavefronSender.
WavefrontJvmReporter wfJvmReporter = wfJvmReporterBuilder.build(wavefrontSender);

Start the WavefrontJvmReporter

You start the WavefrontJvmReporter explicitly to start reporting JVM metrics.

// Start the reporter
wfJvmReporter.start();

Stop the WavefrontJvmReporter

You must explicitly stop the WavefrontJvmReporter before shutting down your JVM.

// Stop the reporter
wfJvmReporter.stop();

JVM metrics

You can go to Wavefront and see the JVM metrics with the prefix app-agent.jvm.*.

wavefront-runtime-sdk-jvm's People

Contributors

akodali18 avatar dependabot[bot] avatar hanwavefront avatar haosong avatar jmoravec avatar joannatk avatar keep94 avatar oppegard avatar shavidissa avatar srujann avatar susanjlindner avatar sushantdewan123 avatar thepeterstone avatar vikramraman avatar wf-jenkins avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wavefront-runtime-sdk-jvm's Issues

doc: list metrics this reports

Folks shouldn't have to try to dig into the internal dependency, if that's even public, in order to see the set of metrics this produces.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.