1*a24ffb47SSadaf Ebrahimi# OpenCensus SignalFx Stats Exporter 2*a24ffb47SSadaf Ebrahimi 3*a24ffb47SSadaf EbrahimiThe _OpenCensus SignalFx Stats Exporter_ is a stats exporter that 4*a24ffb47SSadaf Ebrahimiexports data to [SignalFx](https://signalfx.com), a real-time monitoring 5*a24ffb47SSadaf Ebrahimisolution for cloud and distributed applications. SignalFx ingests that 6*a24ffb47SSadaf Ebrahimidata and offers various visualizations on charts, dashboards and service 7*a24ffb47SSadaf Ebrahimimaps, as well as real-time anomaly detection. 8*a24ffb47SSadaf Ebrahimi 9*a24ffb47SSadaf Ebrahimi## Quickstart 10*a24ffb47SSadaf Ebrahimi 11*a24ffb47SSadaf Ebrahimi### Prerequisites 12*a24ffb47SSadaf Ebrahimi 13*a24ffb47SSadaf EbrahimiTo use this exporter, you must have a [SignalFx](https://signalfx.com) 14*a24ffb47SSadaf Ebrahimiaccount and corresponding [data ingest 15*a24ffb47SSadaf Ebrahimitoken](https://docs.signalfx.com/en/latest/admin-guide/tokens.html). 16*a24ffb47SSadaf Ebrahimi 17*a24ffb47SSadaf Ebrahimi#### Java versions 18*a24ffb47SSadaf Ebrahimi 19*a24ffb47SSadaf EbrahimiThis exporter requires Java 7 or above. 20*a24ffb47SSadaf Ebrahimi 21*a24ffb47SSadaf Ebrahimi### Add the dependencies to your project 22*a24ffb47SSadaf Ebrahimi 23*a24ffb47SSadaf EbrahimiFor Maven add to your `pom.xml`: 24*a24ffb47SSadaf Ebrahimi 25*a24ffb47SSadaf Ebrahimi```xml 26*a24ffb47SSadaf Ebrahimi<dependencies> 27*a24ffb47SSadaf Ebrahimi <dependency> 28*a24ffb47SSadaf Ebrahimi <groupId>io.opencensus</groupId> 29*a24ffb47SSadaf Ebrahimi <artifactId>opencensus-api</artifactId> 30*a24ffb47SSadaf Ebrahimi <version>0.28.3</version> 31*a24ffb47SSadaf Ebrahimi </dependency> 32*a24ffb47SSadaf Ebrahimi <dependency> 33*a24ffb47SSadaf Ebrahimi <groupId>io.opencensus</groupId> 34*a24ffb47SSadaf Ebrahimi <artifactId>opencensus-exporter-stats-signalfx</artifactId> 35*a24ffb47SSadaf Ebrahimi <version>0.28.3</version> 36*a24ffb47SSadaf Ebrahimi </dependency> 37*a24ffb47SSadaf Ebrahimi <dependency> 38*a24ffb47SSadaf Ebrahimi <groupId>io.opencensus</groupId> 39*a24ffb47SSadaf Ebrahimi <artifactId>opencensus-impl</artifactId> 40*a24ffb47SSadaf Ebrahimi <version>0.28.3</version> 41*a24ffb47SSadaf Ebrahimi <scope>runtime</scope> 42*a24ffb47SSadaf Ebrahimi </dependency> 43*a24ffb47SSadaf Ebrahimi</dependencies> 44*a24ffb47SSadaf Ebrahimi``` 45*a24ffb47SSadaf Ebrahimi 46*a24ffb47SSadaf EbrahimiFor Gradle add to your dependencies: 47*a24ffb47SSadaf Ebrahimi 48*a24ffb47SSadaf Ebrahimi```groovy 49*a24ffb47SSadaf Ebrahimicompile 'io.opencensus:opencensus-api:0.28.3' 50*a24ffb47SSadaf Ebrahimicompile 'io.opencensus:opencensus-exporter-stats-signalfx:0.28.3' 51*a24ffb47SSadaf Ebrahimiruntime 'io.opencensus:opencensus-impl:0.28.3' 52*a24ffb47SSadaf Ebrahimi``` 53*a24ffb47SSadaf Ebrahimi 54*a24ffb47SSadaf Ebrahimi### Register the exporter 55*a24ffb47SSadaf Ebrahimi 56*a24ffb47SSadaf Ebrahimi```java 57*a24ffb47SSadaf Ebrahimipublic class MyMainClass { 58*a24ffb47SSadaf Ebrahimi public static void main(String[] args) { 59*a24ffb47SSadaf Ebrahimi // SignalFx token is read from Java system properties. 60*a24ffb47SSadaf Ebrahimi // Stats will be reported every second by default. 61*a24ffb47SSadaf Ebrahimi SignalFxStatsExporter.create(SignalFxStatsConfiguration.builder().build()); 62*a24ffb47SSadaf Ebrahimi } 63*a24ffb47SSadaf Ebrahimi} 64*a24ffb47SSadaf Ebrahimi``` 65*a24ffb47SSadaf Ebrahimi 66*a24ffb47SSadaf EbrahimiIf you want to pass in the token yourself, or set a different reporting 67*a24ffb47SSadaf Ebrahimiinterval, use: 68*a24ffb47SSadaf Ebrahimi 69*a24ffb47SSadaf Ebrahimi```java 70*a24ffb47SSadaf Ebrahimi// Use token "your_signalfx_token" and report every 5 seconds. 71*a24ffb47SSadaf EbrahimiSignalFxStatsExporter.create( 72*a24ffb47SSadaf Ebrahimi SignalFxStatsConfiguration.builder() 73*a24ffb47SSadaf Ebrahimi .setToken("your_signalfx_token") 74*a24ffb47SSadaf Ebrahimi .setExportInterval(Duration.create(5, 0)) 75*a24ffb47SSadaf Ebrahimi .build()); 76*a24ffb47SSadaf Ebrahimi``` 77