open-index/open-npm huggingface dataset:
npm package: @opencensus/exporter-instana
Description: OpenCensus Instana Exporter allows the user to send collected traces with OpenCensus Node.js to Instana.
Author: Instana Inc.
Latest version: 0.1.0

# OpenCensus Instana Trace Exporter
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Instana Trace Exporter allows the user to send collected traces with [OpenCensus Node.js](https://github.com/census-instrumentation/opencensus-node) to [Instana](https://www.instana.com/).

[Instana](http://www.instana.com/) is a distributed
tracing system. Instana provides AI Powered Application and Infrastructure Monitoring, allowing you to deliver Faster With Confidence, and automatic Analysis and Optimization.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus Instana Exporter with:
```bash
npm install @opencensus/nodejs
npm install @opencensus/exporter-instana
```

## Usage
To use Instana as your exporter, first ensure that you have an [Instana agent running on your system](https://docs.instana.io/quick_start/getting_started/) and reporting to your environment. The Instana OpenCensus exporter directly communicates with the Instana agent in order to transmit data to Instana.

```javascript
const tracing = require('@opencensus/nodejs');
const instana = require('@opencensus/exporter-instana');

tracing.start({
  exporter: new instana.InstanaTraceExporter()
});
```

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- For Instana project at https://www.instana.com/
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/exporter-jaeger
Description: OpenCensus Exporter Jeager allows user to send collected traces to Jeager
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus Jaeger Trace Exporter
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Jaeger Trace Exporter allows the user to send collected traces with [OpenCensus Node.js](https://github.com/census-instrumentation/opencensus-node) to Jaeger.

[Jaeger](https://jaeger.readthedocs.io/en/latest/), inspired by [Dapper](https://research.google.com/pubs/pub36356.html) and [OpenZipkin](http://zipkin.io/), is a distributed tracing system released as open source by [Uber Technologies](http://uber.github.io/). It is used for monitoring and troubleshooting microservices-based distributed systems, including:

- Distributed context propagation
- Distributed transaction monitoring
- Root cause analysis
- Service dependency analysis
- Performance / latency optimization

The library is in alpha stage and the API is subject to change.

## Quickstart

### Prerequisites

[Jaeger](https://jaeger.readthedocs.io/en/latest/) stores and queries traces exported by
applications instrumented with Census. The easiest way to [start a Jaeger
server](https://jaeger.readthedocs.io/en/latest/getting_started/) is to paste the below:

```bash
docker run -d \
    -e COLLECTOR_ZIPKIN_HTTP_PORT=9411 \
    -p5775:5775/udp -p6831:6831/udp -p6832:6832/udp \
    -p5778:5778 -p16686:16686 -p14268:14268 -p9411:9411 \
  jaegertracing/all-in-one:latest
```

### Installation

Install OpenCensus Jaeger Exporter with:
```bash
npm install @opencensus/nodejs
npm install @opencensus/exporter-jaeger
```

### Usage

Install the exporter on your application and pass the options, it must contain a service name and, optionaly, an URL. If no URL is passed, `http://127.0.0.1:14268/api/traces` is used as default.

For ES6:

```javascript
import tracing from '@opencensus/nodejs';
import { JaegerTraceExporter } from '@opencensus/exporter-jaeger';

const options = {
  serviceName: 'my-service',
  tags: [], // optional
  host: 'localhost', // optional
  port: 6832, // optional
  maxPacketSize: 65000 // optional
}
const exporter = new JaegerTraceExporter(options);
```

Now, register the exporter and start tracing.

```javascript
tracing.start({'exporter': exporter});
```

or

```javascript
tracing.registerExporter(exporter).start();
```

## Useful links
- To know more about Jaeger, visit: <https://www.jaegertracing.io/docs/1.8/getting-started/>
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/exporter-object
Description: OpenCensus Object Exporter allows the user to collect and access traces with OpenCensus Node.js.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus Object Exporter
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Object Trace Exporter allows the user to collect and
programmatically access traces with [OpenCensus Node.js](https://github.com/census-instrumentation/opencensus-node). This module is useful for when you need
to access collected spans programmatically, for example for testing purposes.

## Installation

Install OpenCensus Object Trace Exporter with:

```bash
npm install @opencensus/nodejs
npm install @opencensus/exporter-object
```

## Usage

For javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const { ObjectTraceExporter } = require('@opencensus/exporter-object');

const exporter = new ObjectTraceExporter();
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import { ObjectTraceExporter } from '@opencensus/exporter-object';
const exporter = new ObjectTraceExporter();
```

Now, register the exporter and start tracing.

```javascript
tracing.start({'exporter': exporter});
```

or

```javascript
tracing.registerExporter(exporter).start();
```

## Viewing your traces

```javascript
exporter.startedSpans.forEach((span: Span)) => {}
exporter.endedSpans.forEach((span: Span)) => {}
exporter.publishedSpans.forEach((span: Span)) => {}
```

## Reset exporter

Empties `startedSpans`, `endedSpans` and `publishedSpans` span stores.

```javascript
exporter.reset();
```

## Useful links

- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/exporter-ocagent
Description: OpenCensus Agent Exporter allows user to send collected trace to the OpenCensus Agent
Author: OpenCensus Authors
Latest version: 0.1.0

# OpenCensus Agent Exporter for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Agent Exporter allows the user to send collected traces with OpenCensus Node.js to the OpenCensus Agent or Collector.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus Agent Exporter with:
```bash
npm install @opencensus/nodejs
npm install @opencensus/exporter-ocagent
```

## Usage

Instance the exporter on your application. For javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const ocagent = require('@opencensus/exporter-ocagent');

const exporter = new ocagent.OCAgentExporter({
  // ... configuration options ...
});

tracing.registerExporter(exporter).start();
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import { OCAgentExporter } from '@opencensus/exporter-ocagent';

const exporter = new OCAgentExporter({
  // ... configuration options ...
});
```

Now, register the exporter and start tracing.

```javascript
tracing.start({exporter: exporter});
```

or

```javascript
tracing.registerExporter(exporter).start();
```

## Configuration Options

The following options are available through the construtor options.

Option          | Type                    | Description
----------------|-------------------------|-
`serviceName`   | string                  | Name of the service. Defaults to `Anonymous Service`.
`host`          | string                  | Host or ip of the agent. Defaults to `localhost`.
`port`          | number                  | Port of the agent. Defaults to `55678`.
`credentials`   | grpc.ChannelCredentials | Credentials to use for grpc connection to agent. Defaults to `grpc.credentials.createInsecure()`.
`attributes`    | {[key: string]: string} | Map of key-value pairs to associate with the Node.
`bufferSize`    | number                  | Maximum size of the span buffer.
`bufferTimeout` | number                  | Max time (in milliseconds) for the buffer can wait before exporting spans.
`logger`        | Logger                  | Logger to use for output.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/exporter-zipkin
Description: OpenCensus Zipkin Exporter allows the user to send collected traces with OpenCensus Node.js to Zipkin.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus Zipkin Trace Exporter
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Zipkin Trace Exporter allows the user to send collected traces with [OpenCensus Node.js](https://github.com/census-instrumentation/opencensus-node) to Zipkin.

[Zipkin](https://zipkin.io/) is a distributed
tracing system. It helps gather timing data needed to troubleshoot
latency problems in microservice architectures. It manages both the
collection and lookup of this data.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus Zipkin Exporter with:
```bash
npm install @opencensus/nodejs
npm install @opencensus/exporter-zipkin
```

## Usage

To use [Zipkin](https://zipkin.io/) as your exporter, first, download from any of the three available options on [Quickstart](https://zipkin.io/pages/quickstart.html): through Docker, on Java or manually compiling the source code. Tests were executed running Zipkin with Java, through the following commands on terminal:

```bash
curl -sSL https://zipkin.io/quickstart.sh | bash -s
java -jar zipkin.jar
```

Instance the exporter on your application and pass the options, it must contain a service name and, optionaly, an URL. If no URL is passed, `http://localhost:9411/api/v2/spans` is used as default.

For javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const zipkin = require('@opencensus/exporter-zipkin');

// Add your zipkin url (ex http://localhost:9411/api/v2/spans)
// and application name to the Zipkin options
const options = {
  url: 'your-zipkin-url',
  serviceName: 'your-application-name'
}
const exporter = new zipkin.ZipkinTraceExporter(options);
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import { Zipkin } from '@opencensus/exporter-zipkin';

// Add your zipkin url (ex http://localhost:9411/api/v2/spans)
// and application name to the Zipkin options
const options = {
  url: 'your-zipkin-url',
  serviceName: 'your-application-name'
}
const exporter = new Zipkin(options);
```

Now, register the exporter and start tracing.

```javascript
tracing.start({'exporter': exporter});
```

or

```javascript
tracing.registerExporter(exporter).start();
```
## Viewing your traces:
Please visit the Zipkin UI endpoint http://localhost:9411

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For Zipkin project at https://zipkin.io/
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/exporter-zpages
Description: A collection of HTML pages to display stats and trace data and allow library configuration control
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus Zpages Exporter for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Zpages Exporter implements a collection of HTML pages that display stats and trace data sent from [OpenCensus Node.js](https://github.com/census-instrumentation/opencensus-node).

The library is in alpha stage and the API is subject to change.

## Installation

```node
npm install @opencensus/nodejs
npm install @opencensus/exporter-zpages
```

## Usage

Zpages always runs on localhost, but you can change the port in the options. If the option `startServer` is set to `true`, Zpages server will start when a new Zpages instance is created. It's also possible to predefined some span names. These empty spans will be listed on Zpages.

To use Zpages, instance the exporter on your application and pass the options. For javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const zpages = require('@opencensus/exporter-zipkin');

// Add your zipkin url and application name to the Zipkin options
const options = {
  port: 8080,   // default
  startServer: true,  // default
  spanNames: ['predefined/span1', 'predefined/span2']
}

const exporter = new zpages.ZpagesExporter(options);
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import {ZpagesExporter, ZpagesExporterOptions} from '@opencensus/zpages-exporter';

// Add your zipkin url and application name to the Zipkin options
const options: ZpagesExporterOptions = {
  port: 8080,   // default
  startServer: true,  // default
  spanNames: ['predefined/span1', 'predefined/span2']
};

const exporter = new ZpagesExporter(options);
```

Now, register the exporter and start tracing.

```javascript
tracing.start({'exporter': exporter});
```

or

```javascript
tracing.registerExporter(exporter).start();
```

### Starting the Zpages server

If `options.startServer` is set to `false`, the server can be started by calling `startServer` method:

```typescript
zpages.startServer();
```

The server will run at `http:\\localhost:port`.

### Browsing the Zpages pages

There are four pages you can browse.

- **/tracez**: Trace list.

- **/traceconfigz**: Trace settings.

- **/rpcz**: RPC stats *(not yet implemented)*.

- **/stats**: Stats page *(not yet implemented)*.

### Stoping the Zpages server

If it is necessary to stop the server programmatically, use the following command:

```typescript
zpages.stopServer();
```

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/instrumentation-grpc
Description: Opencensus grpc automatic instrumentation package.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus gRPC Instrumentation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus gRPC Instrumentation allows the user to automatically collect trace data.

The library is in alpha stage and the API is subject to change.

Note: This code was tested on the following Node versions:
- v6.10.0 (for console exporter only)
- v9.8.0 (for Stackdriver and Zipkin exporters)


## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/instrumentation-http
Description: Opencensus http automatic instrumentation package.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus HTTP Instrumentation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus HTTP Instrumentation allows the user to automatically collect trace data. This package is used by [OpenCensus Node.js](https://github.com/census-instrumentation/opencensus-node/tree/master/packages/opencensus-nodejs) to instrument HTTP for both servers and clients.

The library is in alpha stage and the API is subject to change.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/instrumentation-http2
Description: Opencensus http2 automatic instrumentation package.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus HTTP2 Instrumentation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus HTTP2 Instrumentation allows the user to automatically collect trace data.

The library is in alpha stage and the API is subject to change.

Note: This code was tested on the following Node versions:
- v6.10.0 (for console exporter only)
- v9.8.0 (for Stackdriver and Zipkin exporters)


## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/instrumentation-https
Description: Opencensus https automatic instrumentation package.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus HTTPS Instrumentation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus HTTPS Instrumentation allows the user to automatically collect trace data. This package is used by [OpenCensus Node.js](https://github.com/census-instrumentation/opencensus-node/tree/master/packages/opencensus-nodejs) to instrument HTTPS for both servers and clients.

The library is in alpha stage and the API is subject to change.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/instrumentation-ioredis
Description: Opencensus IORedis automatic instrumentation package.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus ioredis Instrumentation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus IORedis Instrumentation allows the user to automatically collect trace data.
This plugin only support the `ioredis` module starting from the version 2 to latest.

The library is in alpha stage and the API is subject to change.

## Useful links

- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)
- IORedis repository: https://github.com/luin/ioredis

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/instrumentation-mongodb
Description: Opencensus MongoDB automatic instrumentation package.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus MongoDB Instrumentation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus MongoDB Instrumentation allows the user to automatically collect trace data.

The library is in alpha stage and the API is subject to change.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/instrumentation-redis
Description: Opencensus Redis automatic instrumentation package.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus Redis Instrumentation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Redis Instrumentation allows the user to automatically collect trace data.
This plugin only support the `redis` module starting from the version 2.6 to latest.

The library is in alpha stage and the API is subject to change.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/nodejs-base
Description: OpenCensus is a toolkit for collecting application performance and behavior data.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus for Node.js Base
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Node.js Base is an implementation of OpenCensus, a toolkit for
collecting application performance and behavior monitoring data.

The library is in alpha stage and the API is subject to change.

Please join [gitter](https://gitter.im/census-instrumentation/Lobby) for help or feedback on this project.

## Installation

Install OpenCensus Base with:

```bash
npm install @opencensus/nodejs-base
```

## Traces

### Automatically Instrumenting an Application

For automatic insturmentation see the
[@opencensus/nodejs](https://github.com/census-instrumentation/opencensus-node/tree/master/packages/opencensus-nodejs)
package.

### Manually Instrumenting an Application

With `@opencensus/nodejs-base` you have a full control over instrumentation and
span creation. The base package doesn't load Continuation Local Storage (CLS)
or any instrumentation plugin by default.

```typescript
const rootSpanOptions = { name: 'your root span' };
tracing.tracer.startRootSpan(rootSpanOptions, (rootSpan) => {

    // You can create as many child spans as needed
    childSpan = tracing.tracer.startChildSpan({
        name: 'name of your child span'
    });
    // Do some operation...
    // Finish the child span at the end of it's operation
    childSpan.end();

    // Finish the root span at the end of the operation
    rootSpan.end();
});
```

### Tracing Options

 See the `@opencensus/nodejs` package for the full API documentation.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/opencensus-core
Description: OpenCensus is a toolkit for collecting application performance and behavior data.
Author: Google Inc.
Latest version: 0.0.2

# OpenCensus Core Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus for Node.js is an implementation of OpenCensus, a toolkit for collecting application performance and behavior monitoring data. 

The library is in alpha stage and the API is subject to change.

Please join [gitter](https://gitter.im/census-instrumentation/Lobby) for help or feedback on this project.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/propagation-b3
Description: Opencensus propagation package for B3 format.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus B3 Format Propagation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus B3 Format Propagation sends a span context on the wire in an HTTP request, allowing other services to create spans with the right context.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus B3 Propagation with:
```bash
npm install @opencensus/propagation-b3
```

## Usage

To propagate span context arround services with B3 Propagation, pass an instance of B3 Propagation to your tracing instance. For Javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const propagation = require('@opencensus/propagation-b3');

const b3 = new propagation.B3Format();

tracing.start({propagation: b3});
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import { B3Format } from '@opencensus/propagation-b3';

const b3 = new B3Format();

tracing.start({propagation: b3});
```

## Useful links
- To know more about B3 Format propagation, visit: <https://github.com/openzipkin/b3-propagation>
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/propagation-binaryformat
Description: Opencensus propagation package for binary format.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus Binary Format Propagation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Binary Format Propagation sends a span context on the wire using binary encoding, allowing other services to create spans with the right context.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus Binary Propagation with:
```bash
npm install @opencensus/propagation-binaryformat
```

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/propagation-jaeger
Description: Opencensus propagation package for jaeger's format.
Author: Google Inc.
Latest version: 0.1.0

# OpenCensus Jaeger Format Propagation
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus [Jaeger Format Propagation](https://www.jaegertracing.io/docs/1.10/client-libraries/#propagation-format) sends a span context on the wire in an HTTP request, allowing other services to create spans with the right context.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus Jaeger Propagation with:
```bash
npm install @opencensus/propagation-jaeger
```

## Usage

To propagate span context arround services with Jaeger Propagation, pass an instance of Jaeger Propagation to your tracing instance. For Javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const propagation = require('@opencensus/propagation-jaeger');

const jaeger = new propagation.JaegerFormat();

tracing.start({propagation: jaeger});
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import { JaegerFormat } from '@opencensus/propagation-jaeger';

const jaeger = new JaegerFormat();

tracing.start({propagation: jaeger});
```

## Useful links
- To know more about Jaeger Format propagation, visit: <https://www.jaegertracing.io/docs/client-libraries/>
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/propagation-stackdriver
Description: Opencensus propagation package for Stackdriver format.
Author: OpenCensus Authors
Latest version: 0.1.0

# OpenCensus Stackdriver Propagation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Stackdriver Propagation allow other services to create spans with the right context.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus Stackdriver Propagation with:
```bash
npm install @opencensus/propagation-stackdriver
```

## Usage

To propagate span context arround services with Stackdriver Propagation, pass an instance of Stackdriver Propagation to your tracing instance. For Javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const propagation = require('@opencensus/propagation-stackdriver');

const sd = propagation.v1;

tracing.start({propagation: sd});
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import * as propagation from '@opencensus/propagation-stackdriver';

const sd = propagation.v1;

tracing.start({propagation: sd});
```

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/propagation-tracecontext
Description: OpenCensus propagation package for TraceContext format.
Author: OpenCensus Authors
Latest version: 0.1.0

# OpenCensus Trace Context Format Propagation for Node.js
[![Gitter chat][gitter-image]][gitter-url]

OpenCensus Trace Context Format Propagation sends a span context on the wire in an HTTP request, allowing other services to create spans with the right context.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus TraceContex Propagation with:
```bash
npm install @opencensus/propagation-tracecontext
```

## Usage

To propagate span context arround services with Trace Context Propagation, pass an instance of Trace Context Propagation to your tracing instance. For Javascript:

```javascript
const tracing = require('@opencensus/nodejs');
const propagation = require('@opencensus/propagation-tracecontext');

const traceContext = new propagation.TraceContextFormat();

tracing.start({propagation: traceContext});
```

Similarly for Typescript:

```typescript
import * as tracing from '@opencensus/nodejs';
import { TraceContextFormat } from '@opencensus/propagation-tracecontext';

const traceContext = new TraceContextFormat();

tracing.start({propagation: traceContext});
```

## Useful links
- To know more about Trace Context Format propagation, visit: <https://w3c.github.io/distributed-tracing/>
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/resource-util
Description: The OpenCensus Monitored Resource Util for Node.js is a collection of utilities for auto detecting monitored resource when exporting stats, based on the environment where the application is running.
Author: OpenCensus Authors
Latest version: 0.1.0

# OpenCensus Resources Util for Node.js
[![Gitter chat][gitter-image]][gitter-url]

The OpenCensus Monitored Resource Util for Node.js is a collection of utilities for auto detecting monitored resource when exporting stats, based on the environment where the application is running.

The library is in alpha stage and the API is subject to change.

## Installation

Install OpenCensus Resources Util with:
```bash
npm install @opencensus/resource-util
```


## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- To checkout the OpenCensus for Node.js, visit: <https://github.com/census-instrumentation/opencensus-node>
- For help or feedback on this project, join us on [gitter](https://gitter.im/census-instrumentation/Lobby)

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge
npm package: @opencensus/web-core
Description: OpenCensus Web is a toolkit for collecting application performance and behavior data from client side web browser apps.
Author: OpenCensus Authors
Latest version: 0.0.7

# OpenCensus Web Core (Trace Model)
[![Gitter chat][gitter-image]][gitter-url]

*For overview and usage info see the main [OpenCensus Web readme][oc-web-readme-url].*

This package contains the core trace model used by OpenCensus Web. This
trace model is based on the same TypeScript interfaces that
[OpenCensus Node](https://github.com/census-instrumentation/opencensus-node)
uses.

The library is in alpha stage and the API is subject to change.

## Usage

Currently the primary intended usage of OpenCensus Web is to collect
spans from the resource timing waterfall of an initial page load
and trace on-page user interactions with a series of features like automatic tracing 
for *clicks* and *route transitions*, *custom spans*, and browser [Performance API][performance-api] data.
See the [OpenCensus Web readme][oc-web-readme-url] for details.

In the future we would like to make it easy to generate custom spans that will
be conveniently exported to the [OpenCensus Agent][opencensus-service-url]. This
package has the API that will support generation of custom spans. Although it's
not fully wired up and supported yet, you're welcome to poke around the source
code and try to use it!

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- For more about OpenCensus Web: <https://github.com/census-instrumentation/opencensus-web>
- For help or feedback on this project, join us on [gitter][gitter-url]

## License

Apache 2.0 - See [LICENSE][license-url] for more information.

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby
[oc-web-readme-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/README.md
[license-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/packages/opencensus-web-core/LICENSE
[opencensus-service-url]: https://github.com/census-instrumentation/opencensus-service
[performance-api]: (https://developer.mozilla.org/en-US/docs/Web/API/Performance)
npm package: @opencensus/web-exporter-ocagent
Description: OpenCensus Agent Exporter web allows user to send collected traces to the OpenCensus Agent via HTTP/JSON in a browser.
Author: OpenCensus Authors
Latest version: 0.0.7

# OpenCensus Web exporter for the OpenCensus Agent
[![Gitter chat][gitter-image]][gitter-url]

*For overview and usage info see the main [OpenCensus Web readme][oc-web-readme-url].*

This OpenCensus Web agent exporter allows browser clients to send traces to the 
[OpenCensus Agent][opencensus-service-url] via HTTP/JSON, which the [agent
supports][oc-agent-http-url] via `grpc-gateway`.

The library is in alpha stage and the API is subject to change.

## Overview

This package converts spans from the OpenCensus Web core trace model into the
JSON that the OpenCensus Agent expects and sends an XHR to the agent to export
the traces. For the shape of the HTTP/JSON API that the OpenCensus Agent 
expects traces to be sent in, see this
[auto-generated OpenAPi document for it][trace-openapi-url].

## Usage

Currently the primary intended usage of OpenCensus Web is to collect
spans from the resource timing waterfall of an initial page load
and trace on-page user interactions with a series of features like automatic tracing 
for *clicks* and *route transitions*, *custom spans*, and browser [Performance API][performance-api] data.
See the [OpenCensus Web readme][oc-web-readme-url] for details.

In the future we would like to make it easy to generate custom spans that will
be conveniently exported to the [OpenCensus Agent][opencensus-service-url]. This
package provides the exporter needed to hook up those custom generated spans to
be sent to the agent and ultimately then to a trace storage backend. Although
it's not fully wired up and supported yet, you're welcome to poke around the
source code and try to use it!

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- For more about OpenCensus Web: <https://github.com/census-instrumentation/opencensus-web>
- For help or feedback on this project, join us on [gitter][gitter-url]

## License

Apache 2.0 - See [LICENSE][license-url] for more information.

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby
[oc-web-readme-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/README.md
[license-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/packages/opencensus-web-exporter-ocagent/LICENSE
[opencensus-service-url]: https://github.com/census-instrumentation/opencensus-service
[oc-agent-http-url]: https://github.com/census-instrumentation/opencensus-service/blob/master/receiver/README.md#writing-with-httpjson
[trace-openapi-url]: https://github.com/census-instrumentation/opencensus-proto/blob/master/gen-openapi/opencensus/proto/agent/trace/v1/trace_service.swagger.json
[performance-api]: (https://developer.mozilla.org/en-US/docs/Web/API/Performance)
npm package: @opencensus/web-instrumentation-perf
Description: OpenCensus Web instrumentation to generate spans for browser performance API data.
Author: OpenCensus Authors
Latest version: 0.0.7

# OpenCensus Web instrumentation for web performance APIs
[![Gitter chat][gitter-image]][gitter-url]

*For overview and usage info see the main [OpenCensus Web readme][oc-web-readme-url].*

This package generates OpenCensus Web trace model spans based on performance API
data provided by the browser. Specifically, it generates spans for the initial
page load of a site based on the [Resource Timing][resource-timing-url],
[Navigation Timing][nav-timing-url], and [Long Task][long-tasks-url] browser
APIs. It attempts to gracefully degrade for older browsers that do not support
those timing APIs, but it has not been tested yet for browser compatibility.

The library is in alpha stage and the API is subject to change.

## Usage

Currently the primary intended usage of OpenCensus Web is to collect
spans from the resource timing waterfall of an initial page load
and trace on-page user interactions with a series of features like automatic tracing 
for *clicks* and *route transitions*, *custom spans*, and browser [Performance API][performance-api] data.
See the [OpenCensus Web readme][oc-web-readme-url] for details.

In the future we would like to support collecting spans for XHRs and other
operations made after the initial page load and then join those back to the
Resrouce Timing API information for more detailed network timings and events.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- For more about OpenCensus Web: <https://github.com/census-instrumentation/opencensus-web>
- For help or feedback on this project, join us on [gitter][gitter-url]

## License

Apache 2.0 - See [LICENSE][license-url] for more information.

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby
[oc-web-readme-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/README.md
[license-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/packages/opencensus-web-instrumentation-perf/LICENSE
[nav-timing-url]: https://www.w3.org/TR/navigation-timing-2/
[resource-timing-url]: https://www.w3.org/TR/resource-timing-2/
[long-tasks-url]: https://w3c.github.io/longtasks/
[performance-api]: https://developer.mozilla.org/en-US/docs/Web/API/Performance
npm package: @opencensus/web-propagation-b3
Description: OpenCensus Trace Context format propagation for the web browser based on B3 format
Author: OpenCensus Authors
Latest version: 0.0.7

# OpenCensus B3 format propagation for web browsers
[![Gitter chat][gitter-image]][gitter-url]

*For overview and usage info see the main [OpenCensus Web readme][oc-web-readme-url].*

OpenCensus B3 format propagation provides utilities to serialize and
deserialize a trace context header in the [B3 Format][b3-propagation-url]
format.

The library is in alpha stage and the API is subject to change.

## Usage

Currently the primary intended usage of OpenCensus Web is to collect
spans from the resource timing waterfall of an initial page load
and trace on-page user interactions with a series of features like automatic tracing 
for *clicks* and *route transitions*, *custom spans*, and browser [Performance API][performance-api] data.
See the [OpenCensus Web readme][oc-web-readme-url] for details.

This is used to propagate trace contextspans for XHRs in the user interactions, 
serializing a `B3` headers to send along to XHR calls.

It gets passed as an option to the `startTracing` function as follows:

```js
// Use @opencensus/web-instrumentation-zone-peer-dep instead in case your app
// already uses `Zone.js`.
import { startTracing } from '@opencensus/web-instrumentation-zone';
import { B3Format } from '@opencensus/web-propagation-b3';

window.ocAgent = 'https://example.com/my-opencensus-agent-endpoint';
window.ocSampleRate = 1.0; // Sample at 100% for test only. Default is 1/10000.
// Send the trace header to all hosts.
window.ocTraceHeaderHostRegex = /.*/;

// This methods starts the tracing and exports the initial page load trace.
// As the tracing has started, the coming user interactions ares also traced.
startTracing({ propagation: new B3Format() });
```

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- For more about OpenCensus Web: <https://github.com/census-instrumentation/opencensus-web>
- For help or feedback on this project, join us on [gitter][gitter-url]

## License

Apache 2.0 - See [LICENSE][license-url] for more information.

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby
[oc-web-readme-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/README.md
[license-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/packages/opencensus-web-propagation-tracecontext/LICENSE
[b3-propagation-url]: https://github.com/openzipkin/b3-propagation
npm package: @opencensus/web-propagation-tracecontext
Description: OpenCensus Trace Context format propagation for the web browser
Author: OpenCensus Authors
Latest version: 0.0.7

# OpenCensus Trace Context format propagation for web browsers
[![Gitter chat][gitter-image]][gitter-url]

*For overview and usage info see the main [OpenCensus Web readme][oc-web-readme-url].*

OpenCensus Trace Context format propagation provides utilities to serialize and
deserialize a trace context header in the [W3C Trace Context][trace-context-url]
format.

The library is in alpha stage and the API is subject to change.

## Usage

Currently the primary intended usage of OpenCensus Web is to collect
spans from the resource timing waterfall of an initial page load
and trace on-page user interactions with a series of features like automatic tracing 
for *clicks* and *route transitions*, *custom spans*, and browser [Performance API][performance-api] data.
See the [OpenCensus Web readme][oc-web-readme-url] for details.

This package is currently used to deserialize the `window.traceparent` global
variable that the server can send back to the client to indicate the parent
trace context for the initial page load.

This is also used to propagate trace contextspans for XHRs in the user interactions, 
serializing a `traceparent` header to send along to XHR calls.

## Useful links
- For more information on OpenCensus, visit: <https://opencensus.io/>
- For more about OpenCensus Web: <https://github.com/census-instrumentation/opencensus-web>
- For help or feedback on this project, join us on [gitter][gitter-url]

## License

Apache 2.0 - See [LICENSE][license-url] for more information.

[gitter-image]: https://badges.gitter.im/census-instrumentation/lobby.svg
[gitter-url]: https://gitter.im/census-instrumentation/lobby
[oc-web-readme-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/README.md
[license-url]: https://github.com/census-instrumentation/opencensus-web/blob/master/packages/opencensus-web-propagation-tracecontext/LICENSE
[trace-context-url]: https://www.w3.org/TR/trace-context/