-
Notifications
You must be signed in to change notification settings - Fork 641
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ISSUE #340]Add http trace http point #527
Conversation
try { | ||
String exporterName = configuration.eventMeshTraceExporterType; | ||
spanExporter = (SpanExporter) Class.forName("io.opentelemetry.exporter."+exporterName+"."+exporterName+"SpanExporter").newInstance(); | ||
//todo different spanExporter |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have no idea how to set different exporter.What should I do?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Different exporter may implement the SpanExporter
and you can use the reflection to get different exporter instance
@Override | ||
public CompletableResultCode flush() { | ||
CompletableResultCode resultCode = new CompletableResultCode(); | ||
// for (Handler handler : logger.getHandlers()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
remove the unused code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok
try { | ||
String exporterName = configuration.eventMeshTraceExporterType; | ||
spanExporter = (SpanExporter) Class.forName("io.opentelemetry.exporter."+exporterName+"."+exporterName+"SpanExporter").newInstance(); | ||
//todo different spanExporter |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Different exporter may implement the SpanExporter
and you can use the reflection to get different exporter instance
tool/license/allowed-licenses.txt
Outdated
"moduleName": "io.zipkin.zipkin2:zipkin" | ||
}, | ||
{ | ||
"moduleLicense": "Apache 2.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here not correct, The Apache Software License, Version 2.0
or The Apache License, Version 2.0
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, there might some problem with license check plugin, the one license may have different name, and we need to normalize them, we may need to add a LicenseBundleNormalizer filter.
https://github.com/jk1/Gradle-License-Report
I will test this.
tool/license/allowed-licenses.txt
Outdated
"moduleName": "com.squareup.okhttp3:okhttp" | ||
}, | ||
{ | ||
"moduleLicense": "Apache 2.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same as above
|
||
public class zipkinExporter { | ||
public class zipkinExporter implements EventMeshExporter { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
zipkinExporter
isn't right, change to ZipkinExporter
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ok
@@ -74,7 +74,7 @@ eventMesh.server.registry.enabled=false | |||
eventMesh.metrics.prometheus.port=19090 | |||
|
|||
#trace exporter | |||
eventmesh.trace.exporter.type=log | |||
eventmesh.trace.exporter.type=zipkin |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
here may be Zipkin, because of your class name
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
changed
# Conflicts: # eventmesh-runtime/build.gradle # tool/license/allowed-licenses.txt
Codecov Report
@@ Coverage Diff @@
## develop #527 +/- ##
=============================================
+ Coverage 11.00% 11.25% +0.25%
Complexity 391 391
=============================================
Files 263 268 +5
Lines 12490 12694 +204
Branches 1046 1057 +11
=============================================
+ Hits 1374 1429 +55
- Misses 10998 11142 +144
- Partials 118 123 +5
Continue to review full report at Codecov.
|
@@ -132,13 +142,26 @@ public void sendError(ChannelHandlerContext ctx, | |||
"; charset=" + EventMeshConstants.DEFAULT_CHARSET); | |||
response.headers().add(HttpHeaderNames.CONTENT_LENGTH, response.content().readableBytes()); | |||
response.headers().add(HttpHeaderNames.CONNECTION, HttpHeaderValues.KEEP_ALIVE); | |||
// todo server span end with error, record status, we should get channel here to get span in channel's context in async call.. | |||
//todo server span end with error, record status, we should get channel here to get span in channel's context in async call.. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You may need to add a switch to determine whether you want to enter here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
ctx.writeAndFlush(response).addListener(ChannelFutureListener.CLOSE); | ||
} | ||
|
||
public void sendResponse(ChannelHandlerContext ctx, | ||
DefaultFullHttpResponse response) { | ||
// todo end server span, we should get channel here to get span in channel's context in async call. | ||
//todo end server span, we should get channel here to get span in channel's context in async call. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You may need to add a switch to determine whether you want to enter here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
Context context = ctx.channel().attr(AttributeKeys.SERVER_CONTEXT).get(); | ||
Span span = context.get(SpanKey.SERVER_KEY); | ||
try (Scope ignored = context.makeCurrent()) { | ||
span.addEvent("Send Response"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no need to add event about response
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
|
||
//todo record command opaque in span. | ||
span = tracer.spanBuilder("HTTP "+requestCommand.httpMethod).setParent(context).setSpanKind(SpanKind.SERVER).startSpan(); | ||
span.addEvent("Span Start"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
avoid span event here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
//put the context in channel | ||
ctx.channel().attr(AttributeKeys.SERVER_CONTEXT).set(context); | ||
//todo record command method, version and requestCode in span. | ||
span.setAttribute("HttpMethod",httpRequest.method().name()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
//todo record command method, version and requestCode in span. | ||
span.setAttribute("HttpMethod",httpRequest.method().name()); | ||
span.setAttribute("HttpVersion",httpRequest.protocolVersion().protocolName()); | ||
span.setAttribute("RequestCode",requestCode); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
@@ -298,7 +347,11 @@ protected void channelRead0(ChannelHandlerContext ctx, HttpRequest httpRequest) | |||
processEventMeshRequest(ctx, asyncContext); | |||
} catch (Exception ex) { | |||
httpServerLogger.error("AbrstractHTTPServer.HTTPHandler.channelRead0 err", ex); | |||
// todo span end with exception. | |||
//todo span end with exception. | |||
span.addEvent("End Exceptional"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we should add an exception here, but we need to record the cause in event atttribute
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
i am not sure whether i am doing it in a right way
EventMeshExporter eventMeshExporter = (EventMeshExporter) Class.forName(className).newInstance(); | ||
spanExporter = eventMeshExporter.getSpanExporter(configuration); | ||
}catch (Exception ex){ | ||
logger.error("fail to set tracer's exporter,due to{}",ex.getMessage()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fail to set tracer's exporter,due to{}
add a blank before{}
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
# Conflicts: # eventmesh-runtime/build.gradle
# Conflicts: # eventmesh-runtime/src/main/java/org/apache/eventmesh/runtime/boot/AbstractHTTPServer.java # style/checkStyle.xml # tool/license/allowed-licenses.txt
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
* tracing in AbstractHTTPServer * add licence * the span exporter * design docs * fix the error on text * delete the useless dependence * remove the unused code * fix the different spanExporter * change the class name * fix gradle -build problem * design docs improve * fix the gradle.build error problem * fixed * unsure fix * fix the path name * fix check error * format code * add javadoc * checkstyle fix * unversioned files * put context into channel in advance
* readme.md * [ISSUE #563] SDK SUPPORT CLOUD EVENT (#575) * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT * SDK SUPPORT CLOUD EVENT Co-authored-by: wangshaojie <wangshaojie@cmss.chinamobile.com> * [Feature #562] support cloudevents api in eventmesh-connector-api module (#578) * [Feature #564] Support CloudEvents protocols for pub/sub in EventMesh-feature design * support cloudevents api in eventmesh-connector-api module * fix checkStyle * fix checkStyle * fix checkStyle * 1.support LifeCycle.java 2.update Consumer and Producer * fix remove the extra blank line * connector support cloud event (#586) Co-authored-by: wangshaojie <wangshaojie@cmss.chinamobile.com> * [Feature #562] Support CloudEvents for pub/sub in EventMesh runtime (#587) * [Feature #564] Support CloudEvents protocols for pub/sub in EventMesh-feature design * support cloudevents api in eventmesh-connector-api module * fix checkStyle * fix checkStyle * fix checkStyle * 1.support LifeCycle.java 2.update Consumer and Producer * fix remove the extra blank line * support cloudEvents * support cloudEvents * support cloudEvents * support cloudEvents * support cloudevents * support cloudEvents * support cloudEvents * support cloudEvents * [Feature #562] Implement CloudEvents protocol adaptor (#595) * [Feature #564] Support CloudEvents protocols for pub/sub in EventMesh-feature design * support cloudevents api in eventmesh-connector-api module * fix checkStyle * fix checkStyle * fix checkStyle * 1.support LifeCycle.java 2.update Consumer and Producer * fix remove the extra blank line * support cloudEvents * Add files via upload * Update README.md * support cloudEvents * support cloudEvents * [ISSUE #580] Add checkstyle gradle plugin (#581) * Add checkstyle gradle plugin, change plugin package * skip check in ci * support cloudEvents * support cloudevents * update wechat-official qr code * update mesh-helper qr code * Add files via upload * update README.md * update README.md * Update .asf.yaml * support cloudEvents * support cloudEvents * [ISSUE #588] Fix typo in README.md (#589) close #588 * support cloudEvents * [Bug #590] Consumer subscription topic is invalid (#590) (#592) * [Bug #590] Consumer subscription topic is invalid (#590) * [Bug #590] Consumer subscription topic is invalid (#590) close #590 * support cloudEvents adaptor * [Feature #562] Implement CloudEvents adaptor Co-authored-by: Eason Chen <qqeasonchen@gmail.com> Co-authored-by: Wenjun Ruan <wenjun@apache.org> Co-authored-by: Nicholas Zhan <zhan_nicholas@outlook.com> Co-authored-by: hagsyn <44764414+hagsyn@users.noreply.github.com> * [Feature #562] Implement EventMeshMessage protocol adaptor (#597) * [Feature #564] Support CloudEvents protocols for pub/sub in EventMesh-feature design * support cloudevents api in eventmesh-connector-api module * fix checkStyle * fix checkStyle * fix checkStyle * 1.support LifeCycle.java 2.update Consumer and Producer * fix remove the extra blank line * support cloudEvents * Add files via upload * Update README.md * support cloudEvents * support cloudEvents * [ISSUE #580] Add checkstyle gradle plugin (#581) * Add checkstyle gradle plugin, change plugin package * skip check in ci * support cloudEvents * support cloudevents * update wechat-official qr code * update mesh-helper qr code * Add files via upload * update README.md * update README.md * Update .asf.yaml * support cloudEvents * support cloudEvents * [ISSUE #588] Fix typo in README.md (#589) close #588 * support cloudEvents * [Bug #590] Consumer subscription topic is invalid (#590) (#592) * [Bug #590] Consumer subscription topic is invalid (#590) * [Bug #590] Consumer subscription topic is invalid (#590) close #590 * support cloudEvents adaptor * [Feature #562] Implement CloudEvents adaptor * [Feature #562] Implement EventMeshMessage protocol adaptor * supplement apache header Co-authored-by: Eason Chen <qqeasonchen@gmail.com> Co-authored-by: Wenjun Ruan <wenjun@apache.org> Co-authored-by: Nicholas Zhan <zhan_nicholas@outlook.com> Co-authored-by: hagsyn <44764414+hagsyn@users.noreply.github.com> * Remove some unused code (#591) * Remove some unused code in sdk module * Remove some unused code in sdk module * fixed a wrong url in cn-doc (#585) close #596 * resolve_exception->Consumer subscription topic is invalid #590 (#598) close #590 * update Eventmeshmessage plugin (#599) * [Feature #564] Support CloudEvents protocols for pub/sub in EventMesh-feature design * support cloudevents api in eventmesh-connector-api module * fix checkStyle * fix checkStyle * fix checkStyle * 1.support LifeCycle.java 2.update Consumer and Producer * fix remove the extra blank line * support cloudEvents * Add files via upload * Update README.md * support cloudEvents * support cloudEvents * [ISSUE #580] Add checkstyle gradle plugin (#581) * Add checkstyle gradle plugin, change plugin package * skip check in ci * support cloudEvents * support cloudevents * update wechat-official qr code * update mesh-helper qr code * Add files via upload * update README.md * update README.md * Update .asf.yaml * support cloudEvents * support cloudEvents * [ISSUE #588] Fix typo in README.md (#589) close #588 * support cloudEvents * [Bug #590] Consumer subscription topic is invalid (#590) (#592) * [Bug #590] Consumer subscription topic is invalid (#590) * [Bug #590] Consumer subscription topic is invalid (#590) close #590 * support cloudEvents adaptor * [Feature #562] Implement CloudEvents adaptor * [Feature #562] Implement EventMeshMessage protocol adaptor * supplement apache header * 1.update package name 2.support build.gradle and gradle.properties 3.support ProtocolTransportObject Co-authored-by: Eason Chen <qqeasonchen@gmail.com> Co-authored-by: Wenjun Ruan <wenjun@apache.org> Co-authored-by: Nicholas Zhan <zhan_nicholas@outlook.com> Co-authored-by: hagsyn <44764414+hagsyn@users.noreply.github.com> * Update eventmesh-store-quickstart.md * Update README.md * Add slack icon (#601) * Add protocol producer in java sdk (#600) * Add protocol producer in sdk * Refactor callback handler * Add tcp protocol client * Change Tcp interface (#603) * update http push request and adaptor (#606) 1.update http push request 2.update http in protocol adaptor * update java sdk (#607) * Fix standalone connector interface, fix example (#608) * fix compile error (#609) * update java sdk * fix compile error * Java sdk update (#610) * update java sdk * fix compile error * fix sdk error * Add EventMeshTCPClient, this client wrap the sub/sub client (#611) * runtime update (#612) * update java sdk * fix compile error * fix sdk error * 1.remove the openmessage from connector-api 2.fix the standalone connector * Java sdk update (#615) * update java sdk * fix compile error * fix sdk error 1.remove the openmessage from connector-api 2.fix the standalone connector * 1.fix the standalone connector 2.fix the sdk * eventmesh-admin-rocketmq submodule and createTopic REST API (#530) * eventmesh-admin-rocketmq submodule and createTopic draft API * add license header * change to /topicmanage * fix build error * fix some code check style issues close #435 #346 * Fix some small issue (#616) * eventmeshmessage protocol adaptor for tcp (#618) 1.fix the standalone connector 2.fix eventmeshmessage protocol adaptor for tcp * remove openschema implementation from em project * eventmesh message protocol for http pub/sub with standalone connector (#619) 1.fix eventmeshmessage protocol adaptor for http with standalone connector * create topic command (#531) * create topic command * address review comments * fix build and add createtopic method to standalone module * fix build issue * fix a few remaining code check issues * fix test close #346 * Java sdk update cloudevents pub/sub (#620) 1.cloudevents protocol tcp pub/sub for sdk * Update README.md * Change TCP Decoder and Encoder (#621) * cloudevents protocol tcp pub/sub for sdk (#622) 1.cloudevents protocol tcp pub/sub for sdk * cloudevents protocol tcp pub/sub for sdk (#623) cloudevents protocol tcp pub/sub for sdk * cloudevents protocol http pub/sub for sdk (#625) cloudevents protocol http pub/sub for sdk * cloudevents protocol pub/sub for http sdk (#627) fix cloudevents protocol pub/sub for http sdk * Add AbstractEventMeshTCPSubHandler (#624) * Add AbstractEventMeshTCPSubHandler * cloudevents/eventmesh message protocol pub/sub for sdk in rocketmq-connector (#628) * fix cloudevents/eventmesh message protocol pub/sub for sdk in rocketmq-connector * cloudevents/eventmesh message protocol pub/sub for sdk in rocketmq-connector (#629) * fix cloudevents/eventmesh message protocol pub/sub for sdk in rocketmq-connector * Safely delete useless log4j dependencies * Safely delete outdated metrics dependencies * Sately delete useless collections4 dependency * Safely delete useless commons dependencies * Reback to the collections4, but let it not in api dependency * Could not remove text for Safe Ramdom implementation * Fix build error * Add collection4 * Fix build error * Revert "Safely delete outdated metrics dependencies" This reverts commit 92287b0. * Change to api dependency * Remove doclint warnings * Depracated checkstyle check error temporarily, we should remove it when we polish later * sync request/response for sdk in rocketmq-connector (#634) fix sync request/response for sdk in rocketmq-connector * Update .asf.yaml * Update .asf.yaml * fix conflicts and update the code (#635) * Add files via upload * Update README.md * [ISSUE #580] Add checkstyle gradle plugin (#581) * Add checkstyle gradle plugin, change plugin package * skip check in ci * update wechat-official qr code * update mesh-helper qr code * Add files via upload * update README.md * update README.md * Update .asf.yaml * [ISSUE #588] Fix typo in README.md (#589) close #588 * [Bug #590] Consumer subscription topic is invalid (#590) (#592) * [Bug #590] Consumer subscription topic is invalid (#590) * [Bug #590] Consumer subscription topic is invalid (#590) close #590 * fixed a wrong url in cn-doc (#585) close #596 * resolve_exception->Consumer subscription topic is invalid #590 (#598) close #590 * Update eventmesh-store-quickstart.md * Update README.md * Add slack icon (#601) * eventmesh-admin-rocketmq submodule and createTopic REST API (#530) * eventmesh-admin-rocketmq submodule and createTopic draft API * add license header * change to /topicmanage * fix build error * fix some code check style issues close #435 #346 * create topic command (#531) * create topic command * address review comments * fix build and add createtopic method to standalone module * fix build issue * fix a few remaining code check issues * fix test close #346 * Update README.md * Safely delete useless log4j dependencies * Safely delete outdated metrics dependencies * Sately delete useless collections4 dependency * Safely delete useless commons dependencies * Reback to the collections4, but let it not in api dependency * Could not remove text for Safe Ramdom implementation * Fix build error * Add collection4 * Fix build error * Revert "Safely delete outdated metrics dependencies" This reverts commit 92287b0. * Change to api dependency * Remove doclint warnings * Depracated checkstyle check error temporarily, we should remove it when we polish later * Update .asf.yaml * Update .asf.yaml Co-authored-by: Eason Chen <qqeasonchen@gmail.com> Co-authored-by: Wenjun Ruan <wenjun@apache.org> Co-authored-by: Nicholas Zhan <zhan_nicholas@outlook.com> Co-authored-by: hagsyn <44764414+hagsyn@users.noreply.github.com> Co-authored-by: sarihuangshanrong <280456134@qq.com> Co-authored-by: yuri <yu.zhao5@huawei.com> Co-authored-by: vongosling <vongosling@apache.org> * supply apache header * Remove license name, add LICENSE file * resolve conflict * remove some not used in binary license * set connector plugin to standalone * Add license check shell * Add jdk11 and otherOS in github ci * Add comments * resolve javadoc failed on jdk11 * Change skywalking uses repo to main * GRPC producer publish API * remove unused files * remove unused plugin * [ISSUE #630] RocketMQProducerImpl cannot load config properties from classpath (#631) * Fix RocketMqConsumer cannot load properties in classpath close #630 * [Bug #646] Missing the rocketmq message properties during protocol conversion (#647) * [Bug #646] Missing the rocketmq message properties during protocol conversion * fix checkstyle and gradle module dependency * fix conflicts close #646 * grpc publish with cloudevents * [MINOR] Hide ctx in callback function and update contributing doc (#644) 1. Hide ctx in callback function 2. Resolve compile warning of loss spi 3. Update contributing doc 4.Remove codeql * [ISSUE #405] remove some unused code (#649) * [ISSUE #405] remove some unused code * [Issue #417] grpc publish API * [MINOR] Add third-part dependencies licenses (#650) * [MINOR] supply the license and update the third party license file name (#653) [MINOR] supply the license and update the third party license file name * [ISSUE #340]Add http trace http point (#527) * tracing in AbstractHTTPServer * add licence * the span exporter * design docs * fix the error on text * delete the useless dependence * remove the unused code * fix the different spanExporter * change the class name * fix gradle -build problem * design docs improve * fix the gradle.build error problem * fixed * unsure fix * fix the path name * fix check error * format code * add javadoc * checkstyle fix * unversioned files * put context into channel in advance * Update quick start docs (#656) * [MINOR] Upgrade log4j version to 2.16.0 (#654) * Update log4j version * [MINOR] update the license and add the third party license files (#657) * [MINOR] update the license and add the third party license files * [ISSUE #604]Improve the rebalance algorithm (#605) * modify:optimize flow control in downstreaming msg * modify:optimize stategy of selecting session in downstream msg * modify:optimize msg downstream,msg store in session * modify:fix bug:not a @sharable handler * modify:downstream broadcast msg asynchronously * modify:remove unneccessary interface in eventmesh-connector-api * modify:fix conflict * modify:add license in EventMeshAction * modify:fix ack problem * modify:fix exception handle when exception occured in EventMeshTcpMessageDispatcher * modify:fix log print * modify: fix issue#496,ClassCastException * modify: improve rebalance algorithm close #604 * [Feature #547] Create and upload 1.3.0-snapshot docker image (#659) * [Feature #547] Create and upload 1.3.0-snapshot docker image * grpc consumer work * [MINOR] Add third-part dependencies licenses (#650) * [MINOR] supply the license and update the third party license file name (#653) [MINOR] supply the license and update the third party license file name * [ISSUE #340]Add http trace http point (#527) * tracing in AbstractHTTPServer * add licence * the span exporter * design docs * fix the error on text * delete the useless dependence * remove the unused code * fix the different spanExporter * change the class name * fix gradle -build problem * design docs improve * fix the gradle.build error problem * fixed * unsure fix * fix the path name * fix check error * format code * add javadoc * checkstyle fix * unversioned files * put context into channel in advance * Update quick start docs (#656) * [MINOR] Upgrade log4j version to 2.16.0 (#654) * Update log4j version * [MINOR] update the license and add the third party license files (#657) * [MINOR] update the license and add the third party license files * [ISSUE #604]Improve the rebalance algorithm (#605) * modify:optimize flow control in downstreaming msg * modify:optimize stategy of selecting session in downstream msg * modify:optimize msg downstream,msg store in session * modify:fix bug:not a @sharable handler * modify:downstream broadcast msg asynchronously * modify:remove unneccessary interface in eventmesh-connector-api * modify:fix conflict * modify:add license in EventMeshAction * modify:fix ack problem * modify:fix exception handle when exception occured in EventMeshTcpMessageDispatcher * modify:fix log print * modify: fix issue#496,ClassCastException * modify: improve rebalance algorithm close #604 * [Feature #547] Create and upload 1.3.0-snapshot docker image (#659) * [Feature #547] Create and upload 1.3.0-snapshot docker image * merge from develop * GRPC producer publish API * grpc publish with cloudevents * Adding grpc publish and subscribe API examples * grpc consumer api testing and bug fixing * minor enhancement to grpc consumer Co-authored-by: xwm1992 <mike_xwm@126.com> Co-authored-by: wangshaojie4039 <15001782969@163.com> Co-authored-by: wangshaojie <wangshaojie@cmss.chinamobile.com> Co-authored-by: Eason Chen <qqeasonchen@gmail.com> Co-authored-by: Wenjun Ruan <wenjun@apache.org> Co-authored-by: Nicholas Zhan <zhan_nicholas@outlook.com> Co-authored-by: hagsyn <44764414+hagsyn@users.noreply.github.com> Co-authored-by: sarihuangshanrong <280456134@qq.com> Co-authored-by: yuri <yu.zhao5@huawei.com> Co-authored-by: vongosling <vongosling@apache.org> Co-authored-by: ZePeng Chen <84842773+Roc-00@users.noreply.github.com> Co-authored-by: lrhkobe <34571087+lrhkobe@users.noreply.github.com>
* tracing in AbstractHTTPServer * add licence * the span exporter * design docs * fix the error on text * delete the useless dependence * remove the unused code * fix the different spanExporter * change the class name * fix gradle -build problem * design docs improve * fix the gradle.build error problem * fixed * unsure fix * fix the path name * fix check error * format code * add javadoc * checkstyle fix * unversioned files * put context into channel in advance
* tracing in AbstractHTTPServer * add licence * the span exporter * design docs * fix the error on text * delete the useless dependence * remove the unused code * fix the different spanExporter * change the class name * fix gradle -build problem * design docs improve * fix the gradle.build error problem * fixed * unsure fix * fix the path name * fix check error * format code * add javadoc * checkstyle fix * unversioned files * put context into channel in advance
Fixes ISSUE#<340>.
Motivation
Modifications
Add class 'OpenTelemetryTraceFactory' which allow eventmeshHTTPServer to get tracer from it.
Rewrite the class 'loggingSpanExporter' of open telemetry in eventmesh,because it will casue garbled code.What I had done is change the logger into slf4j's logger.
Documentation