You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2019/04/02 00:16:52 UTC
[incubator-skywalking] branch jaeger-receiver updated: Add document
for jaeger receiver.
This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch jaeger-receiver
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git
The following commit(s) were added to refs/heads/jaeger-receiver by this push:
new 1dd6dc2 Add document for jaeger receiver.
1dd6dc2 is described below
commit 1dd6dc2c8686b4d3b31e85f344f73f1995b2b0b5
Author: Wu Sheng <wu...@foxmail.com>
AuthorDate: Mon Apr 1 17:16:43 2019 -0700
Add document for jaeger receiver.
---
docs/en/setup/backend/backend-receivers.md | 29 ++++++++++++++++++--
docs/en/setup/backend/backend-storage.md | 19 +++++++++++++
.../src/main/resources/official_analysis.oal | 2 +-
.../src/main/resources/application.yml | 32 +++++++---------------
4 files changed, 57 insertions(+), 25 deletions(-)
diff --git a/docs/en/setup/backend/backend-receivers.md b/docs/en/setup/backend/backend-receivers.md
index a4302a9..cfeb940 100644
--- a/docs/en/setup/backend/backend-receivers.md
+++ b/docs/en/setup/backend/backend-receivers.md
@@ -12,6 +12,7 @@ We have following receivers, and `default` implementors are provided in our Apac
1. **istio-telemetry**. Istio telemetry is from Istio official bypass adaptor, this receiver match its gRPC services.
1. **envoy-metric**. Envoy `metrics_service` supported by this receiver. OAL script support all GAUGE type metrics.
1. **receiver_zipkin**. See [details](#zipkin-receiver).
+1. **receiver_jaeger**. See [details]
The sample settings of these receivers should be already in default `application.yml`, and also list here
```yaml
@@ -69,7 +70,17 @@ But it wouldn't analysis metric from them. In most case, I suggest you could use
Notice, in this mode, Zipkin receiver requires `zipkin-elasticsearch` storage implementation active.
Read [this](backend-storage.md#elasticsearch-6-with-zipkin-trace-extension) to know
how to active.
-1. Analysis mode(Not production ready), receive Zipkin v1/v2 formats through HTTP service. Transform the trace to skywalking
+
+Use following config to active.
+```yaml
+receiver_zipkin:
+ default:
+ host: ${SW_RECEIVER_ZIPKIN_HOST:0.0.0.0}
+ port: ${SW_RECEIVER_ZIPKIN_PORT:9411}
+ contextPath: ${SW_RECEIVER_ZIPKIN_CONTEXT_PATH:/}
+```
+
+2. Analysis mode(Not production ready), receive Zipkin v1/v2 formats through HTTP service. Transform the trace to skywalking
native format, and analysis like skywalking trace. This feature can't work in production env right now,
because of Zipkin tag/endpoint value unpredictable, we can't make sure it fits production env requirements.
@@ -81,4 +92,18 @@ receiver_zipkin:
port: ${SW_RECEIVER_ZIPKIN_PORT:9411}
contextPath: ${SW_RECEIVER_ZIPKIN_CONTEXT_PATH:/}
needAnalysis: true
-```
\ No newline at end of file
+```
+
+## Jaeger receiver
+Jaeger receiver right now only works in `Tracing Mode`, and no analysis.
+Jaeger receiver provides extra gRPC host/port, if absent, sharing-server host/port will be used, then core gRPC host/port.
+Receiver requires `jaeger-elasticsearch` storage implementation active.
+Read [this](backend-storage.md#elasticsearch-6-with-jaeger-trace-extension) to know
+
+Active the receiver.
+```yaml
+receiver_jaeger:
+ default:
+ gRPCHost: ${SW_RECEIVER_JAEGER_HOST:0.0.0.0}
+ gRPCPort: ${SW_RECEIVER_JAEGER_PORT:14250}
+```
\ No newline at end of file
diff --git a/docs/en/setup/backend/backend-storage.md b/docs/en/setup/backend/backend-storage.md
index f769690..806215b 100644
--- a/docs/en/setup/backend/backend-storage.md
+++ b/docs/en/setup/backend/backend-storage.md
@@ -68,6 +68,25 @@ storage:
concurrentRequests: ${SW_STORAGE_ES_CONCURRENT_REQUESTS:2} # the number of concurrent requests
```
+### ElasticSearch 6 with Jaeger trace extension
+This implementation shares most of `elasticsearch`, just extend to support zipkin span storage.
+It has all same configs.
+```yaml
+storage:
+ jaeger-elasticsearch:
+ nameSpace: ${SW_NAMESPACE:""}
+ clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:localhost:9200}
+ user: ${SW_ES_USER:""}
+ password: ${SW_ES_PASSWORD:""}
+ indexShardsNumber: ${SW_STORAGE_ES_INDEX_SHARDS_NUMBER:2}
+ indexReplicasNumber: ${SW_STORAGE_ES_INDEX_REPLICAS_NUMBER:0}
+ # Batch process setting, refer to https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.5/java-docs-bulk-processor.html
+ bulkActions: ${SW_STORAGE_ES_BULK_ACTIONS:2000} # Execute the bulk every 2000 requests
+ bulkSize: ${SW_STORAGE_ES_BULK_SIZE:20} # flush the bulk every 20mb
+ flushInterval: ${SW_STORAGE_ES_FLUSH_INTERVAL:10} # flush the bulk every 10 seconds whatever the number of requests
+ concurrentRequests: ${SW_STORAGE_ES_CONCURRENT_REQUESTS:2} # the number of concurrent requests
+```
+
### About Namespace
When namespace is set, names of all indexes in ElasticSearch will use it as prefix.
diff --git a/oap-server/generated-analysis/src/main/resources/official_analysis.oal b/oap-server/generated-analysis/src/main/resources/official_analysis.oal
index 3957151..66b664a 100644
--- a/oap-server/generated-analysis/src/main/resources/official_analysis.oal
+++ b/oap-server/generated-analysis/src/main/resources/official_analysis.oal
@@ -102,5 +102,5 @@ envoy_parent_connections_used = from(EnvoyInstanceMetric.value).filter(metricNam
// disable(segment);
// disable(endpoint_relation_server_side);
// disable(top_n_database_statement);
-disable(zipkin_span);
+// disable(zipkin_span);
// disable(jaeger_span);
\ No newline at end of file
diff --git a/oap-server/server-starter/src/main/resources/application.yml b/oap-server/server-starter/src/main/resources/application.yml
index 206b0c6..c1c14bd 100644
--- a/oap-server/server-starter/src/main/resources/application.yml
+++ b/oap-server/server-starter/src/main/resources/application.yml
@@ -55,24 +55,7 @@ core:
dayMetricsDataTTL: ${SW_CORE_DAY_METRIC_DATA_TTL:45} # Unit is day
monthMetricsDataTTL: ${SW_CORE_MONTH_METRIC_DATA_TTL:18} # Unit is month
storage:
-# elasticsearch:
-# nameSpace: ${SW_NAMESPACE:""}
-# clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:localhost:9200}
-# user: ${SW_ES_USER:""}
-# password: ${SW_ES_PASSWORD:""}
-# indexShardsNumber: ${SW_STORAGE_ES_INDEX_SHARDS_NUMBER:2}
-# indexReplicasNumber: ${SW_STORAGE_ES_INDEX_REPLICAS_NUMBER:0}
-# # Batch process setting, refer to https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.5/java-docs-bulk-processor.html
-# bulkActions: ${SW_STORAGE_ES_BULK_ACTIONS:2000} # Execute the bulk every 2000 requests
-# bulkSize: ${SW_STORAGE_ES_BULK_SIZE:20} # flush the bulk every 20mb
-# flushInterval: ${SW_STORAGE_ES_FLUSH_INTERVAL:10} # flush the bulk every 10 seconds whatever the number of requests
-# concurrentRequests: ${SW_STORAGE_ES_CONCURRENT_REQUESTS:2} # the number of concurrent requests
-# h2:
-# driver: ${SW_STORAGE_H2_DRIVER:org.h2.jdbcx.JdbcDataSource}
-# url: ${SW_STORAGE_H2_URL:jdbc:h2:mem:skywalking-oap-db}
-# user: ${SW_STORAGE_H2_USER:sa}
-# mysql:
- jaeger-elasticsearch:
+ elasticsearch:
nameSpace: ${SW_NAMESPACE:""}
clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:localhost:9200}
user: ${SW_ES_USER:""}
@@ -84,6 +67,11 @@ storage:
bulkSize: ${SW_STORAGE_ES_BULK_SIZE:20} # flush the bulk every 20mb
flushInterval: ${SW_STORAGE_ES_FLUSH_INTERVAL:10} # flush the bulk every 10 seconds whatever the number of requests
concurrentRequests: ${SW_STORAGE_ES_CONCURRENT_REQUESTS:2} # the number of concurrent requests
+# h2:
+# driver: ${SW_STORAGE_H2_DRIVER:org.h2.jdbcx.JdbcDataSource}
+# url: ${SW_STORAGE_H2_URL:jdbc:h2:mem:skywalking-oap-db}
+# user: ${SW_STORAGE_H2_USER:sa}
+# mysql:
receiver-sharing-server:
default:
receiver-register:
@@ -115,10 +103,10 @@ envoy-metric:
# host: ${SW_RECEIVER_ZIPKIN_HOST:0.0.0.0}
# port: ${SW_RECEIVER_ZIPKIN_PORT:9411}
# contextPath: ${SW_RECEIVER_ZIPKIN_CONTEXT_PATH:/}
-receiver_jaeger:
- default:
- gRPCHost: ${SW_RECEIVER_JAEGER_HOST:0.0.0.0}
- gRPCPort: ${SW_RECEIVER_JAEGER_PORT:14250}
+#receiver_jaeger:
+# default:
+# gRPCHost: ${SW_RECEIVER_JAEGER_HOST:0.0.0.0}
+# gRPCPort: ${SW_RECEIVER_JAEGER_PORT:14250}
query:
graphql:
path: ${SW_QUERY_GRAPHQL_PATH:/graphql}