You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by GitBox <gi...@apache.org> on 2018/10/30 09:56:33 UTC

[GitHub] lhttanner opened a new issue #1850: Some questions about the agent consume TraceSegment

lhttanner opened a new issue #1850: Some questions about the agent consume TraceSegment
URL: https://github.com/apache/incubator-skywalking/issues/1850
 
 
   Please answer these questions before submitting your issue.
   
   - Why do you submit this issue?
   - [x] Question or discussion
   - [ ] Bug
   - [ ] Requirement
   - [x] Feature or performance improvement
   
   ___
   ### Question
   - What do you want to know?
   1、Why configured 1 number of consumer threads in org.apache.skywalking.apm.agent.core.remote.TraceSegmentServiceClient.boot()? can i largen this ?
   (TraceSegmentServiceClient的boot方法第70行,carrier.consume(this, 1); 这个消费者的线程为什么配置的是1,有什么原因么?我可以修改变大这个参数么?)
   2、In my agent log file( skywalking.log) debug a lot of “DEBUG 2018-10-29 09:25:46 TraceSegmentServiceClient :  One trace segment has been abandoned, cause by buffer is full. ”
   How can i optimize configured (在其中一个项目忙时的时候agent的日志里有打印很多的trace segment 被丢弃,buffer满了,有没有可以优化的配置,防止数据丢失)
   3、WARN More than 300 spans required to create ,can i configured 1000?(某些方法超过了300个spans,我可以配置到1000么?)
   
   ___
   ### Bug
   - Which version of SkyWalking, OS and JRE?
   5.0.0-RC-SNAPSHOT
   jdk1.8
   - Which company or project?
   
   - What happen?
   1、DEBUG 2018-10-29 09:25:46 TraceSegmentServiceClient :  One trace segment has been abandoned, cause by buffer is full. 
   
   2、WARN 2018-10-30 09:33:18 TracingContext :  More than 300 spans required to create 
   java.lang.RuntimeException: Shadow tracing context. Thread dump
   	at org.apache.skywalking.apm.agent.core.context.TracingContext.isLimitMechanismWorking(TracingContext.java:528)
   	at org.apache.skywalking.apm.agent.core.context.TracingContext.access$100(TracingContext.java:56)
   	at org.apache.skywalking.apm.agent.core.context.TracingContext$7.doProcess(TracingContext.java:339)
   	at org.apache.skywalking.apm.agent.core.dictionary.PossibleFound.doInCondition(PossibleFound.java:50)
   	at org.apache.skywalking.apm.agent.core.context.TracingContext.createExitSpan(TracingContext.java:335)
   	at org.apache.skywalking.apm.agent.core.context.ContextManager.createExitSpan(ContextManager.java:124)
   	at org.apache.skywalking.apm.plugin.jdbc.mysql.PreparedStatementExecuteMethodsInterceptor.beforeMethod(PreparedStatementExecuteMethodsInterceptor.java:52)
   	at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:82)
   	at com.mysql.jdbc.JDBC42PreparedStatement.execute(JDBC42PreparedStatement.java)
   	at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:2931)
   	at com.alibaba.druid.filter.FilterAdapter.preparedStatement_execute(FilterAdapter.java:1058)
   	at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:2929)
   	at com.alibaba.druid.filter.FilterEventAdapter.preparedStatement_execute(FilterEventAdapter.java:440)
   	at com.alibaba.druid.filter.FilterChainImpl.preparedStatement_execute(FilterChainImpl.java:2929)
   	at com.alibaba.druid.proxy.jdbc.PreparedStatementProxyImpl.execute(PreparedStatementProxyImpl.java:131)
   	at com.alibaba.druid.pool.DruidPooledPreparedStatement.execute(DruidPooledPreparedStatement.java:493)
   	at org.apache.ibatis.executor.statement.PreparedStatementHandler.update(PreparedStatementHandler.java:46)
   	at org.apache.ibatis.executor.statement.RoutingStatementHandler.update(RoutingStatementHandler.java:74)
   	at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:50)
   	at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:117)
   	at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:76)
   	at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:198)
   	at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:185)
   	at sun.reflect.GeneratedMethodAccessor707.invoke(Unknown Source)
   	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   	at java.lang.reflect.Method.invoke(Method.java:498)
   	at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:434)
   	at com.sun.proxy.$Proxy24.insert(Unknown Source)
   	at org.mybatis.spring.SqlSessionTemplate.insert(SqlSessionTemplate.java:279)
   	at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:57)
   	at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:53)
   	at com.sun.proxy.$Proxy61.insert(Unknown Source)
   	at com.ctzj.smt.bss.data.service.AbstractBasePartitionService.lambda$insert$0(AbstractBasePartitionService.java:24)
   	at com.ctzj.smt.bss.data.persist.PersistDataAccessTemplate.execute(PersistDataAccessTemplate.java:93)
   	at com.ctzj.smt.bss.data.persist.AbstractPersistBaseService.executePartition(AbstractPersistBaseService.java:20)
   	at com.ctzj.smt.bss.data.service.AbstractBasePartitionService.insert(AbstractBasePartitionService.java:24)
   	at com.ctzj.smt.bss.order.base.service.AbstractOrderPartitionBaseService.modify(AbstractOrderPartitionBaseService.java:41)
   	at com.ctzj.smt.bss.order.base.service.impl.OrderItemRelBaseServiceImpl.modOrderItemRelDtoList(OrderItemRelBaseServiceImpl.java:45)
   	at com.ctzj.smt.bss.order.core.service.impl.CustomerOrderSaveServiceImpl.modCustomerOrder(CustomerOrderSaveServiceImpl.java:153)
   	at sun.reflect.GeneratedMethodAccessor1120.invoke(Unknown Source)
   	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   	at java.lang.reflect.Method.invoke(Method.java:498)
   	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
   	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
   	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
   	at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
   	at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:282)
   	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
   	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
   	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:213)
   	at com.sun.proxy.$Proxy120.modCustomerOrder(Unknown Source)
   	at com.ctzj.smt.bss.order.receive.service.dubbo.impl.CustOrderDubboServiceImpl.creatCustOrder(CustOrderDubboServiceImpl.java:104)
   	at com.alibaba.dubbo.common.bytecode.Wrapper49.invokeMethod(Wrapper49.java)
   	at com.alibaba.dubbo.rpc.proxy.javassist.JavassistProxyFactory$1.doInvoke(JavassistProxyFactory.java:46)
   	at com.alibaba.dubbo.rpc.proxy.AbstractProxyInvoker.invoke(AbstractProxyInvoker.java:72)
   	at com.alibaba.dubbo.rpc.protocol.InvokerWrapper.invoke(InvokerWrapper.java:53)
   	at com.alibaba.dubbo.rpc.filter.ExceptionFilter.invoke(ExceptionFilter.java:64)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.monitor.esb.EsbMonitorFilter.invoke$original$dGUHaOpE(EsbMonitorFilter.java:30)
   	at com.alibaba.dubbo.monitor.esb.EsbMonitorFilter.invoke$original$dGUHaOpE$accessor$2GBSpsTB(EsbMonitorFilter.java)
   	at com.alibaba.dubbo.monitor.esb.EsbMonitorFilter$auxiliary$mg9WcYKN.call(Unknown Source)
   	at org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.InstMethodsInter.intercept(InstMethodsInter.java:93)
   	at com.alibaba.dubbo.monitor.esb.EsbMonitorFilter.invoke(EsbMonitorFilter.java)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.rpc.filter.TimeoutFilter.invoke(TimeoutFilter.java:42)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.rpc.protocol.dubbo.filter.TraceFilter.invoke(TraceFilter.java:78)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.rpc.filter.ContextFilter.invoke(ContextFilter.java:60)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.rpc.filter.GenericFilter.invoke(GenericFilter.java:132)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.rpc.filter.ClassLoaderFilter.invoke(ClassLoaderFilter.java:38)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.rpc.filter.EchoFilter.invoke(EchoFilter.java:38)
   	at com.alibaba.dubbo.rpc.protocol.ProtocolFilterWrapper$1.invoke(ProtocolFilterWrapper.java:91)
   	at com.alibaba.dubbo.rpc.protocol.dubbo.DubboProtocol$1.reply(DubboProtocol.java:109)
   	at com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchangeHandler.handleRequest(HeaderExchangeHandler.java:88)
   	at com.alibaba.dubbo.remoting.exchange.support.header.HeaderExchangeHandler.received(HeaderExchangeHandler.java:174)
   	at com.alibaba.dubbo.remoting.transport.DecodeHandler.received(DecodeHandler.java:52)
   	at com.alibaba.dubbo.remoting.transport.dispatcher.ChannelEventRunnable.run(ChannelEventRunnable.java:82)
   	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
   	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
   	at java.lang.Thread.run(Thread.java:748)
   ___
   ### Requirement or improvement
   - Please describe about your requirements or improvement suggestions.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services