|
| 1 | +--- |
| 2 | +title: Insights from the OpenTelemetry Collector Survey |
| 3 | +linkTitle: OpenTelemetry Collector Survey |
| 4 | +date: 2024-05-08 |
| 5 | +author: '[Hope Oluwalolope](https://github.com/iamebonyhope) (Microsoft)' |
| 6 | +# prettier-ignore |
| 7 | +cSpell:ignore: attributesprocessor basicauthextension batchprocessor bearertokenauthextension clientauthextension countconnector customizability datadogconnector debugexporter distros filelogreceiver filterprocessor healthcheckextension hostmetricsreceiver k8sattributesprocessor lokiexporter memorylimiterprocessor Oluwalolope otlpexporter otlpreceiver Pprof pprofextension prometheusexporter prometheusreceiver prometheusremotewriteexporter routingconnector sclusterreceiver Servicegraph servicegraphconnector spanmetricsconnector |
| 8 | +--- |
| 9 | + |
| 10 | +The [OpenTelemetry (OTel) Collector](/docs/collector/) has become a cornerstone |
| 11 | +tool for observing and monitoring modern software applications. Recently, the |
| 12 | +End User SIG conducted a survey to gather feedback from users about their |
| 13 | +experiences with the OTel Collector. While we acknowledge that the 186 responses |
| 14 | +we received may not be statistically significant, they represent a great start |
| 15 | +and provide valuable insights. These insights include details about users’ |
| 16 | +deployment practices and implementation challenges, which are instrumental in |
| 17 | +helping to drive the OTel Collector’s future direction. |
| 18 | + |
| 19 | +## Key Takeaways |
| 20 | + |
| 21 | +- Companies typically have medium to large collector deployments: |
| 22 | + - \>5 Collectors: 125/186 |
| 23 | + - \>10 Collectors: 100/186 |
| 24 | +- Building custom binaries/distributions of the Collector is more popular than |
| 25 | + expected (61/186), with most people using the |
| 26 | + [OTel Collector Builder](https://github.com/open-telemetry/opentelemetry-collector-builder) |
| 27 | + to do so (49/61) |
| 28 | +- The vast majority deploy the Collector on Kubernetes (150/186) |
| 29 | +- There's more desire for stability (59), self-observability (53), and config |
| 30 | + management (59), than for new components (14) |
| 31 | + |
| 32 | +## Detailed Insights |
| 33 | + |
| 34 | +### Deployment Scale and Environment |
| 35 | + |
| 36 | +Our findings indicate robust use of the OTel Collector at scale, with |
| 37 | +53.8%(100/186) of respondents deploying more than 10 collectors, 13.4%(25/186) |
| 38 | +running between 5 and 10 collectors, and 22%(41/186) running between 2 and 5 |
| 39 | +collectors. |
| 40 | + |
| 41 | + |
| 42 | + |
| 43 | +Kubernetes is the leading platform for Collector deployment (80.6%), followed by |
| 44 | +virtual machines (33.3%) and bare metal (10.8%). |
| 45 | + |
| 46 | + |
| 47 | + |
| 48 | +### Usage Scenarios |
| 49 | + |
| 50 | +The OTel Collector is primarily used as a gateway (64.5%), demonstrating its |
| 51 | +pivotal role in aggregating telemetry data from various sources. Daemonsets |
| 52 | +(51.6%) and sidecars (23.7%) are also popular deployment models, showcasing the |
| 53 | +flexibility of the OTel Collector in different operational contexts. |
| 54 | + |
| 55 | + |
| 56 | + |
| 57 | +### Customization and Configuration |
| 58 | + |
| 59 | +A surprising number of people build their own distributions of the Collector |
| 60 | +(61/186), indicating that providing a composable Collector is important for the |
| 61 | +community. Most people who do build their own Collector distros use the |
| 62 | +[OTel Collector Builder (OCB)](https://github.com/open-telemetry/opentelemetry-collector-builder) |
| 63 | +(49/61). Of the 49 respondents who leverage the OCB, most were able to figure it |
| 64 | +out, with only 2 respondents stating that it’s too hard to use. |
| 65 | + |
| 66 | + |
| 67 | + |
| 68 | +### Monitoring and Observability |
| 69 | + |
| 70 | +When it comes to monitoring the Collectors, a vast majority of respondents rely |
| 71 | +on Collector metrics and logs (81.7%), and only a few don't monitor their |
| 72 | +Collector(s) at all (16.6%). When we peered deeper into the data, we found that |
| 73 | +of the 125 respondents with more than 5 Collectors, only 15 are not monitoring |
| 74 | +their Collectors, and of the 100 respondents with more than 10 Collectors, only |
| 75 | +9 are not monitoring their Collectors. This seems to indicate that users take |
| 76 | +monitoring their Collectors seriously once they reach a certain maturity with |
| 77 | +their Collector deployments. |
| 78 | + |
| 79 | + |
| 80 | + |
| 81 | +### OTel Components Usage |
| 82 | + |
| 83 | +The OTel Collector's flexibility is vividly illustrated by the wide array of |
| 84 | +exporters, receivers, processors, connectors, and extensions that are used |
| 85 | +across various environments. This highlights the Collector's capability to |
| 86 | +integrate with a vast range of tools and systems. |
| 87 | + |
| 88 | +The top components according to our survey results are as follows: |
| 89 | + |
| 90 | +### Exporters |
| 91 | + |
| 92 | +1. [otlpexporter](https://github.com/open-telemetry/opentelemetry-collector/tree/main/exporter/otlpexporter) |
| 93 | +2. [prometheusremotewriteexporter](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/exporter/prometheusremotewriteexporter/README.md) |
| 94 | +3. [prometheusexporter](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/exporter/prometheusexporter/README.md) |
| 95 | +4. [lokiexporter](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/exporter/lokiexporter/README.md) |
| 96 | +5. [debugexporter](https://github.com/open-telemetry/opentelemetry-collector/tree/main/exporter/debugexporter) |
| 97 | + |
| 98 | +### Receivers |
| 99 | + |
| 100 | +1. [otlpreceiver](https://github.com/open-telemetry/opentelemetry-collector/tree/main/receiver/otlpreceiver) |
| 101 | +2. [prometheusreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/receiver/prometheusreceiver/README.md) |
| 102 | +3. [filelogreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/filelogreceiver) |
| 103 | +4. [hostmetricsreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/receiver/hostmetricsreceiver/README.md) |
| 104 | +5. [k8sclusterreceiver](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/receiver/k8sclusterreceiver/README.md) |
| 105 | + |
| 106 | +### Processors |
| 107 | + |
| 108 | +1. [batchprocessor](https://github.com/open-telemetry/opentelemetry-collector/tree/main/processor/batchprocessor) |
| 109 | +2. [attributesprocessor](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/attributesprocessor/README.md) |
| 110 | +3. [filterprocessor](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/filterprocessor/README.md) |
| 111 | +4. [memorylimiterprocessor](https://github.com/open-telemetry/opentelemetry-collector/tree/main/processor/memorylimiterprocessor) |
| 112 | +5. [k8sattributesprocessor](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/k8sattributesprocessor/README.md) |
| 113 | + |
| 114 | +### Connectors |
| 115 | + |
| 116 | +1. [spanmetricsconnector](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/spanmetricsprocessor/README.md) |
| 117 | +2. [servicegraphconnector](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/servicegraphprocessor/README.md) |
| 118 | +3. [routingconnector](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/processor/routingprocessor/README.md) |
| 119 | +4. [countconnector](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/countprocessor/README.md) |
| 120 | +5. [datadogconnector](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/exporter/datadogexporter/README.md) |
| 121 | + |
| 122 | +### Extensions |
| 123 | + |
| 124 | +1. [healthcheckextension](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/healthcheckextension/README.md) |
| 125 | +2. [basicauthextension](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/basicauthextension/README.md) |
| 126 | +3. [pprofextension](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/pprofextension/README.md) |
| 127 | +4. [bearertokenauthextension](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/bearertokenauthextension/README.md) |
| 128 | +5. [oauth2clientauthextension](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/extension/oauth2clientauthextension/README.md) |
| 129 | + |
| 130 | +<br/> |
| 131 | + |
| 132 | +For a more detailed look at the specific exporters, receivers, processors, |
| 133 | +connectors, and extensions in use, you can check out the |
| 134 | +[raw results](https://github.com/open-telemetry/sig-end-user/blob/main/end-user-surveys/otel-collector/otel-collector-survey.csv). |
| 135 | +The data provides a clear view of the popular choices within the community as |
| 136 | +well as the niche configurations that exemplify the customizability of the OTel |
| 137 | +Collector. |
| 138 | + |
| 139 | +### Areas for Improvement |
| 140 | + |
| 141 | +Respondents were clear about their desire for enhancements in stability (30.6%), |
| 142 | +configuration management and resolution (30.1%), and self-observability (28%), |
| 143 | +versus wanting new components (<8%) |
| 144 | + |
| 145 | + |
| 146 | + |
| 147 | +The |
| 148 | +[OTel Collector survey results](https://github.com/open-telemetry/sig-end-user/blob/main/end-user-surveys/otel-collector/otel-collector-survey.csv) |
| 149 | +offer a snapshot of the current state of Collector deployment and utilization. |
| 150 | +It's evident that while the OTel Collector is widely adopted and highly |
| 151 | +customizable, there are also opportunities to make it more user-friendly and |
| 152 | +robust. |
| 153 | + |
| 154 | +## Keep in touch |
| 155 | + |
| 156 | +Thanks to everyone who participated in the survey! We rely on your feedback to |
| 157 | +help guide the future development of OpenTelemetry and to ensure it continues to |
| 158 | +meet your evolving needs. |
| 159 | + |
| 160 | +We will post upcoming surveys in the following avenues: |
| 161 | +[#otel-sig-end-user Slack channel](https://cloud-native.slack.com/archives/C01RT3MSWGZ) |
| 162 | +– you can also reach out to us here! |
| 163 | +[End user resources page](/community/end-user/) |
0 commit comments