<commit_before>---
title: "Collector"
weight: 7
logo: /images/opencensus-logo.png
---

- [Introduction](#introduction)
- [Benefits](#benefits)
- [Getting started](#getting-started)
- [References](#references)

### Introduction

The OpenCensus Collector is a component that runs “nearby” (e.g. in the same
VPC, AZ, etc.) a user’s application components and receives trace spans and
metrics emitted by supported [Receivers](/collector/receivers). The received
spans and metrics could be emitted directly by clients in instrumented tasks,
or potentially routed via intermediate proxy sidecar/daemon agents such as the
[OpenCensus Agent](/agent). The collector provides a central egress point for
exporting traces and metrics to one or more tracing and/or metrics backends
while offering buffering and retries as well as advanced aggregation,
filtering, annotation and intelligent sampling capabilities.

![](/images/opencensus-service-deployment-models.png)

By default, the OpenCensus Collector listens on TCP port `55678` and receives
traffic from the [opencensus
protocol](https://github.com/census-instrumentation/opencensus-proto/tree/master/src/opencensus/proto/agent).
It can be configured to listen for a variety of different protocols as defined
in the [Receivers](/collector/receivers) section.

The Collector is written in the [Go programming language](https://golang.org/),
it is cross platform, self-monitored and receives traffic from any application
that supports any of the available [Receivers](/collector/receivers) regardless
of the programming language and deployment.

### Benefits

##### For Tracing/Metrics Providers ...

* <b>Implement one [Exporter](/collector/exporters) and get data from applications in many languages.</b>
Developing exporters only for one language ("Go") dramatically scales
infrastructure development and deployment, as observability backends no longer
have to develop exporters in [every 1 of the 9+ languages that OpenCensus
supports.](/language-support)

* <b>Democratizes deployments</b>
Cloud providers can define the backends/exporters that the Collector sends data to.

##### For Application Developers ...

* <b>Manage a single [Exporter](/collector/exporter).</b>
Your applications no longer have to locally enable each exporter per language.
All applications sends data using [OpenCensus
Exporter](/collector/exporters/opencensus).

* <b>Democratizes deployments</b>
Developers can send the data to the backends of their choice.
<commit_msg>service: fix broken links to Receivers & Exporters (#750)<commit_after>---
title: "Collector"
weight: 7
logo: /images/opencensus-logo.png
---

- [Introduction](#introduction)
- [Benefits](#benefits)
- [Getting started](#getting-started)
- [References](#references)

### Introduction

The OpenCensus Collector is a component that runs “nearby” (e.g. in the same
VPC, AZ, etc.) a user’s application components and receives trace spans and
metrics emitted by supported [Receivers](/service/receivers). The received
spans and metrics could be emitted directly by clients in instrumented tasks,
or potentially routed via intermediate proxy sidecar/daemon agents such as the
[OpenCensus Agent](/agent). The collector provides a central egress point for
exporting traces and metrics to one or more tracing and/or metrics backends
while offering buffering and retries as well as advanced aggregation,
filtering, annotation and intelligent sampling capabilities.

![](/images/opencensus-service-deployment-models.png)

By default, the OpenCensus Collector listens on TCP port `55678` and receives
traffic from the [opencensus
protocol](https://github.com/census-instrumentation/opencensus-proto/tree/master/src/opencensus/proto/agent).
It can be configured to listen for a variety of different protocols as defined
in the [Receivers](/service/receivers) section.

The Collector is written in the [Go programming language](https://golang.org/),
it is cross platform, self-monitored and receives traffic from any application
that supports any of the available [Receivers](/service/receivers) regardless
of the programming language and deployment.

### Benefits

##### For Tracing/Metrics Providers ...

* <b>Implement one [Exporter](/service/exporters) and get data from applications in many languages.</b>
Developing exporters only for one language ("Go") dramatically scales
infrastructure development and deployment, as observability backends no longer
have to develop exporters in [every 1 of the 9+ languages that OpenCensus
supports.](/language-support)

* <b>Democratizes deployments</b>
Cloud providers can define the backends/exporters that the Collector sends data to.

##### For Application Developers ...

* <b>Manage a single [Exporter](/service/exporters).</b>
Your applications no longer have to locally enable each exporter per language.
All applications sends data using [OpenCensus
Exporter](/service/exporters/opencensus).

* <b>Democratizes deployments</b>
Developers can send the data to the backends of their choice.

{'fraction_non_alphanumeric': 0.08739796934103125, 'fraction_numerical': 0.0037826000398168426, 'mean_word_length': 5.383735705209657, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 19, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 6, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3392208', 'n_tokens_mistral': 1406, 'n_tokens_neox': 1313, 'n_words': 559}