All,
OpenSearch/ OpenSearch-Dashboard 2.8.0
Ubuntu 22.0.4
Data Prepper 2.3.1 from here
OpenTelemetry v0.80.0 install from here
I was able to install and run both Data Prepper and Otel on ubuntu. My issue seams like nothing is happening meaning no data is sent to Opensearch for Trace analytics, which Im trying to learn how this works.
Data Prepper
data-prepper-config.yaml
root@ansible:/opt/opensearch-data-prepper/config# cat data-prepper-config.yaml
ssl: false
authentication:
http_basic:
username: "admin"
password: "changeit"
root@ansible:/opt/opensearch-data-prepper/config#
pipelines.yaml
root@ansible:/opt/opensearch-data-prepper/config# cat pipelines.yaml
entry-pipeline:
delay: "100"
source:
otel_trace_source:
ssl: false
sink:
- pipeline:
name: "raw-pipeline"
- pipeline:
name: "service-map-pipeline"
raw-pipeline:
source:
pipeline:
name: "entry-pipeline"
processor:
- otel_metrics_raw_processor:
calculate_histogram_buckets: true
calculate_exponential_histogram_buckets: true
exponential_histogram_max_allowed_scale: 10
flatten_attributes: false
sink:
- opensearch:
hosts: [ "https://domain.com:9200" ]
cert: /opt/opensearch-data-prepper/config/root-ca.pem
username: "admin"
password: "changeit"
index_type: trace-analytics-raw
max_retries: 20
bulk_size: 4
service-map-pipeline:
delay: "100"
source:
pipeline:
name: "entry-pipeline"
processor:
- service_map_stateful:
sink:
- opensearch:
hosts: [ "https://domain-.com:9200" ]
cert: /opt/opensearch-data-prepper/config/root-ca.pem
username: "admin"
password: "changeit"
max_retries: 20
bulk_size: 4
index_type: trace-analytics-service-map
Startup_Log_file
Data Prepper now supports reading pipeline and data-prepper configuration files
from Data Prepper home directory automatically.
You can continue to specify paths to configuration files as command line arguments,
but that support will be dropped in a future release.
JAVA_HOME is set to /opt/opensearch-data-prepper/openjdk/jdk-17.0.4.1+1
2023-07-03T22:08:26,719 [main] INFO org.opensearch.dataprepper.DataPrepperArgumentConfiguration - Command line args: config/pipelines.yaml,config/data-prepper-config.yaml
2023-07-03T22:08:28,605 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building pipeline [entry-pipeline] from provided configuration
2023-07-03T22:08:28,606 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building [otel_trace_source] as source component for the pipeline [entry-pipeline]
2023-07-03T22:08:28,745 [main] WARN org.opensearch.dataprepper.plugins.source.oteltrace.OTelTraceSource - Creating otel-trace-source without authentication. This is not secure.
2023-07-03T22:08:28,745 [main] WARN org.opensearch.dataprepper.plugins.source.oteltrace.OTelTraceSource - In order to set up Http Basic authentication for the otel-trace-source, go here: https://github.com/opensearch-project/data-prepper/tree/main/data-prepper-plugins/otel-trace-source#authentication-configurations
2023-07-03T22:08:28,747 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building buffer for the pipeline [entry-pipeline]
2023-07-03T22:08:28,754 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building processors for the pipeline [entry-pipeline]
2023-07-03T22:08:28,755 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building sinks for the pipeline [entry-pipeline]
2023-07-03T22:08:28,756 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building [pipeline] as sink component
2023-07-03T22:08:28,757 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building [pipeline] as sink component
2023-07-03T22:08:28,758 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Constructing MultiBufferDecorator with [0] secondary buffers for pipeline [entry-pipeline]
2023-07-03T22:08:28,768 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building pipeline [service-map-pipeline] from provided configuration
2023-07-03T22:08:28,768 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building [pipeline] as source component for the pipeline [service-map-pipeline]
2023-07-03T22:08:28,768 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building buffer for the pipeline [service-map-pipeline]
2023-07-03T22:08:28,770 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building processors for the pipeline [service-map-pipeline]
2023-07-03T22:08:28,770 [main] WARN org.opensearch.dataprepper.plugin.DefaultPluginFactory - Plugin name 'service_map_stateful' is deprecated and will be removed in the next major release. Consider using the updated plugin name 'service_map'.
2023-07-03T22:08:30,204 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building sinks for the pipeline [service-map-pipeline]
2023-07-03T22:08:30,204 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building [opensearch] as sink component
2023-07-03T22:08:30,255 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Constructing MultiBufferDecorator with [1] secondary buffers for pipeline [service-map-pipeline]
2023-07-03T22:08:30,256 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building pipeline [raw-pipeline] from provided configuration
2023-07-03T22:08:30,256 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building [pipeline] as source component for the pipeline [raw-pipeline]
2023-07-03T22:08:30,256 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building buffer for the pipeline [raw-pipeline]
2023-07-03T22:08:30,258 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building processors for the pipeline [raw-pipeline]
2023-07-03T22:08:30,258 [main] WARN org.opensearch.dataprepper.plugin.DefaultPluginFactory - Plugin name 'otel_metrics_raw_processor' is deprecated and will be removed in the next major release. Consider using the updated plugin name 'otel_metrics'.
2023-07-03T22:08:30,268 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building sinks for the pipeline [raw-pipeline]
2023-07-03T22:08:30,269 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Building [opensearch] as sink component
2023-07-03T22:08:30,272 [main] INFO org.opensearch.dataprepper.parser.PipelineParser - Constructing MultiBufferDecorator with [1] secondary buffers for pipeline [raw-pipeline]
2023-07-03T22:08:30,632 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [service-map-pipeline] - sink is not ready for execution, retrying
2023-07-03T22:08:30,632 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.OpenSearchSink - Initializing OpenSearch sink
2023-07-03T22:08:30,673 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.ConnectionConfiguration - Using the username provided in the config.
2023-07-03T22:08:31,361 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.ConnectionConfiguration - Using the cert provided in the config.
2023-07-03T22:08:32,948 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.index.AbstractIndexManager - Found version 0 for existing index template otel-v1-apm-service-map-index-template
2023-07-03T22:08:32,948 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.index.AbstractIndexManager - Index template otel-v1-apm-service-map-index-template should not be updated, current version 0 >= existing version 0
2023-07-03T22:08:32,974 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.OpenSearchSink - Initialized OpenSearch sink
2023-07-03T22:08:32,974 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [raw-pipeline] - sink is not ready for execution, retrying
2023-07-03T22:08:32,975 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.OpenSearchSink - Initializing OpenSearch sink
2023-07-03T22:08:32,975 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.ConnectionConfiguration - Using the username provided in the config.
2023-07-03T22:08:32,976 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.ConnectionConfiguration - Using the cert provided in the config.
2023-07-03T22:08:33,134 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.index.AbstractIndexManager - Found version 1 for existing index template otel-v1-apm-span-index-template
2023-07-03T22:08:33,135 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.index.AbstractIndexManager - Index template otel-v1-apm-span-index-template should not be updated, current version 1 >= existing version 1
2023-07-03T22:08:33,164 [main] INFO org.opensearch.dataprepper.plugins.sink.opensearch.OpenSearchSink - Initialized OpenSearch sink
2023-07-03T22:08:33,166 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [entry-pipeline] - Initiating pipeline execution
2023-07-03T22:08:36,994 [main] WARN org.opensearch.dataprepper.plugins.source.oteltrace.OTelTraceSource - Creating otel_trace_source without SSL/TLS. This is not secure.
2023-07-03T22:08:36,995 [main] WARN org.opensearch.dataprepper.plugins.source.oteltrace.OTelTraceSource - In order to set up TLS for the otel_trace_source, go here: https://github.com/opensearch-project/data-prepper/tree/main/data-prepper-plugins/otel-trace-source#ssl
2023-07-03T22:08:37,379 [main] INFO org.opensearch.dataprepper.plugins.source.oteltrace.OTelTraceSource - Started otel_trace_source on port 21890...
2023-07-03T22:08:37,380 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [entry-pipeline] - Submitting request to initiate the pipeline processing
2023-07-03T22:08:37,382 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [service-map-pipeline] - Initiating pipeline execution
2023-07-03T22:08:37,383 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [service-map-pipeline] - Submitting request to initiate the pipeline processing
2023-07-03T22:08:37,383 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [raw-pipeline] - Initiating pipeline execution
2023-07-03T22:08:37,384 [main] INFO org.opensearch.dataprepper.pipeline.Pipeline - Pipeline [raw-pipeline] - Submitting request to initiate the pipeline processing
2023-07-03T22:08:37,403 [main] WARN org.opensearch.dataprepper.pipeline.server.HttpServerProvider - Creating Data Prepper server without TLS. This is not secure.
2023-07-03T22:08:37,403 [main] WARN org.opensearch.dataprepper.pipeline.server.HttpServerProvider - In order to set up TLS for the Data Prepper server, go here: https://github.com/opensearch-project/data-prepper/blob/main/docs/configuration.md#server-configuration
2023-07-03T22:08:37,430 [main] INFO org.opensearch.dataprepper.pipeline.server.DataPrepperServer - Data Prepper server running at :4900
OpenTelemetry
config.yaml
root@ansible:/etc/otelcol# cat config.yaml
receivers:
otlp:
protocols:
grpc:
endpoint: 0.0.0.0:55681
exporters:
otlp/data-prepper:
endpoint: http://192.168.1.100:21890
tls:
insecure: true
insecure_skip_verify: true
logging:
service:
pipelines:
traces:
receivers: [otlp]
exporters: [logging,otlp/data-prepper]
otelcol.conf
root@ansible:/etc/otelcol# cat otelcol.conf
# Systemd environment file for the otelcol service
# Command-line options for the otelcol service.
# Run `/usr/bin/otelcol --help` to see all available options.
OTELCOL_OPTIONS="--config=/etc/otelcol/config.yaml"
Startup_Log_file
Jul 03 21:54:10 domain.com systemd[1]: Started OpenTelemetry Collector.
-- Subject: A start job for unit otelcol.service has finished successfully
-- Defined-By: systemd
-- Support: http://www.ubuntu.com/support
--
-- A start job for unit otelcol.service has finished successfully.
--
-- The job identifier is 170511.
Jul 03 21:54:11 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.931-0500 info service/telemetry.go:81 Setting up own telemetry...
Jul 03 21:54:12 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.936-0500 info service/telemetry.go:104 Serving Prometheus metrics {"address": ":8888", "level": "Basic"}
Jul 03 21:54:12 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.936-0500 info exporter@v0.80.0/exporter.go:275 Development component. May change in the future. {"kind": "exporter", "data_type": "traces", "name": "logging"}
Jul 03 21:54:12 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.940-0500 info service/service.go:131 Starting otelcol... {"Version": "0.80.0", "NumCPU": 4}
Jul 03 21:54:12 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.940-0500 info extensions/extensions.go:30 Starting extensions...
Jul 03 21:54:12 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.944-0500 warn internal@v0.80.0/warning.go:40 Using the 0.0.0.0 address exposes this server to every network interface, which may facilitate Denial of Service attacks{"kind": "receiver", "name": "otlp", "data_type": "traces", "documentation": "https://github.com/open-telemetry/opentelemetry-collector/blob/main/docs/security-best-practices.md#safeguards-against-denial-of-service-attacks"}
Jul 03 21:54:12 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.944-0500 info otlpreceiver@v0.80.0/otlp.go:83 Starting GRPC server{"kind": "receiver", "name": "otlp", "data_type": "traces", "endpoint": "0.0.0.0:55681"}
Jul 03 21:54:12 ansible.enseva-labs.net otelcol[427003]: 2023-07-03T21:54:11.944-0500 info service/service.go:148 Everything is ready. Begin running and processing data.
~
Im not sure what ports to use nor how to configure these to services correctly to send data to Opensearch for observability
At the monment Im using the following
Filebeat/Metricbeat/Winlogbeat/Rsyslog/Nxlog/Packetbeat/Auditbeat with out issues.
knowing how those services work, I tried to apply it to Data Prepper with out success.
Dashboard is empty
Any help or advice would be apperciated.
Thanks in advance