Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
apache
SkyWalking
提交
8c51043d
S
SkyWalking
项目概览
apache
/
SkyWalking
上一次同步 1 年多
通知
302
Star
21345
Fork
6091
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
SkyWalking
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
8c51043d
编写于
1月 27, 2021
作者:
Z
Zhenxu Ke
提交者:
GitHub
1月 27, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Remove duplicate codes in Envoy ALS handler (#6263)
上级
7b1c63de
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
1 addition
and
22 deletion
+1
-22
CHANGES.md
CHANGES.md
+1
-0
oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java
...g/oap/server/receiver/envoy/MetricServiceGRPCHandler.java
+0
-22
未找到文件。
CHANGES.md
浏览文件 @
8c51043d
...
...
@@ -76,6 +76,7 @@ Release Notes.
*
Add node information from the Openensus proto to the labels of the samples, to support the identification of the source of the Metric data.
*
Fix bug that the same sample name in one MAL expression caused
`IllegalArgumentException`
in
`Analyzer.analyse`
.
*
Add the text analyzer for querying log in the es storage.
*
Chore: Remove duplicate codes in Envoy ALS handler
#### UI
*
Fix un-removed tags in trace query.
...
...
oap-server/server-receiver-plugin/envoy-metrics-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/envoy/MetricServiceGRPCHandler.java
浏览文件 @
8c51043d
...
...
@@ -31,12 +31,7 @@ import lombok.extern.slf4j.Slf4j;
import
org.apache.skywalking.apm.util.StringUtil
;
import
org.apache.skywalking.oap.meter.analyzer.prometheus.PrometheusMetricConverter
;
import
org.apache.skywalking.oap.server.core.CoreModule
;
import
org.apache.skywalking.oap.server.core.analysis.IDManager
;
import
org.apache.skywalking.oap.server.core.analysis.TimeBucket
;
import
org.apache.skywalking.oap.server.core.analysis.meter.MeterSystem
;
import
org.apache.skywalking.oap.server.core.analysis.NodeType
;
import
org.apache.skywalking.oap.server.core.source.ServiceInstanceUpdate
;
import
org.apache.skywalking.oap.server.core.source.SourceReceiver
;
import
org.apache.skywalking.oap.server.library.module.ModuleManager
;
import
org.apache.skywalking.oap.server.library.module.ModuleStartException
;
import
org.apache.skywalking.oap.server.library.util.prometheus.metrics.Metric
;
...
...
@@ -51,13 +46,11 @@ import org.apache.skywalking.oap.server.telemetry.api.MetricsTag;
@Slf4j
public
class
MetricServiceGRPCHandler
extends
MetricsServiceGrpc
.
MetricsServiceImplBase
{
private
final
SourceReceiver
sourceReceiver
;
private
final
CounterMetrics
counter
;
private
final
HistogramMetrics
histogram
;
private
final
List
<
PrometheusMetricConverter
>
converters
;
public
MetricServiceGRPCHandler
(
final
ModuleManager
moduleManager
,
final
EnvoyMetricReceiverConfig
config
)
throws
ModuleStartException
{
sourceReceiver
=
moduleManager
.
find
(
CoreModule
.
NAME
).
provider
().
getService
(
SourceReceiver
.
class
);
MetricsCreator
metricsCreator
=
moduleManager
.
find
(
TelemetryModule
.
NAME
)
.
provider
()
.
getService
(
MetricsCreator
.
class
);
...
...
@@ -102,13 +95,10 @@ public class MetricServiceGRPCHandler extends MetricsServiceGrpc.MetricsServiceI
if
(
service
!=
null
&&
StringUtil
.
isNotEmpty
(
service
.
getServiceName
())
&&
StringUtil
.
isNotEmpty
(
service
.
getServiceInstanceName
()))
{
List
<
Metrics
.
MetricFamily
>
list
=
message
.
getEnvoyMetricsList
();
boolean
needHeartbeatUpdate
=
true
;
for
(
final
Metrics
.
MetricFamily
metricFamily
:
list
)
{
counter
.
inc
();
final
String
serviceId
=
IDManager
.
ServiceID
.
buildId
(
service
.
getServiceName
(),
NodeType
.
Normal
);
try
(
final
HistogramMetrics
.
Timer
ignored
=
histogram
.
createTimer
())
{
final
ProtoMetricFamily2MetricsAdapter
adapter
=
new
ProtoMetricFamily2MetricsAdapter
(
metricFamily
);
final
Stream
<
Metric
>
metrics
=
adapter
.
adapt
().
peek
(
it
->
{
...
...
@@ -116,18 +106,6 @@ public class MetricServiceGRPCHandler extends MetricsServiceGrpc.MetricsServiceI
it
.
getLabels
().
putIfAbsent
(
"instance"
,
service
.
getServiceInstanceName
());
});
converters
.
forEach
(
converter
->
converter
.
toMeter
(
metrics
));
if
(
needHeartbeatUpdate
&&
list
.
get
(
0
).
getMetricCount
()
>
0
)
{
final
long
timestamp
=
adapter
.
adaptTimestamp
(
list
.
get
(
0
).
getMetric
(
0
));
// Send heartbeat
ServiceInstanceUpdate
serviceInstanceUpdate
=
new
ServiceInstanceUpdate
();
serviceInstanceUpdate
.
setName
(
service
.
getServiceInstanceName
());
serviceInstanceUpdate
.
setServiceId
(
serviceId
);
serviceInstanceUpdate
.
setTimeBucket
(
TimeBucket
.
getMinuteTimeBucket
(
timestamp
));
sourceReceiver
.
receive
(
serviceInstanceUpdate
);
needHeartbeatUpdate
=
false
;
}
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录