Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    yjqg6666
    @yjqg6666
    @Xylus One more question. If i want to make an app(in openresty + nginx+lua) to send trace data(just agent info & span data(receive&send time)) in thrift. which protocol&transportation should i use to send data to collector?
    yjqg6666
    @yjqg6666
    @Xylus Please ignore it. I find another way to satisfy my need.
    hanbum
    @ParkHanbum
    hello, I'm develop nodejs profiling tool. before grpc be support officially, I was try to communicate between pinpoint collector by using grpc. it was partially success, so I can record javascript function calling in nodejs to pinpoint. now I'm want try to record other metrics such as cpu usage, memory, I/O, nodejs statistics. but need some advise about protocol buffer. what and how use each field of protocol buffer? any good examples for this?
    SRE CloudNative
    @dinesh4747
    @RoySRose - when can we expect pinpoint 2.0 release, any remote posi
    Any remote possibility of early Jan 2020* ?
    Jackey
    @JackeyBob
    @Xylus Does Pinpoint supports tracing of mongoDB´╝č
    koo-taejin
    @koo-taejin
    @JackeyBob Pinpoint supports mongoDB driver.
    You can see support librares on this page. (https://github.com/naver/pinpoint/blob/master/doc/modules.md)
    @dinesh4747 We are trying to release 2.0.0 in January.
    koo-taejin
    @koo-taejin
    @ParkHanbum This part has a lot of data, so it might be helpful to see the code.
    The codes in the com.navercorp.pinpoint.profiler.monitor.metric package are to make actual Stat messages.
    If you don't understand something about a particular metric, please tell me.
    SRE CloudNative
    @dinesh4747
    @koo-taejin - I need some real help on issue#6353 - regarding spring webflux plugin tracing...
    koo-taejin
    @koo-taejin
    @dinesh4747 If you follow Jaehong's opinion, I expect the problem will be solved.
    SRE CloudNative
    @dinesh4747
    @koo-taejin @Xylus @RoySRose - can someone pls take a look at issue#6353 and I have tried all the options as directed by Kim but none of them helped in getting trace for application specific method calls
    Palanivelrajan Balasubramanian
    @praveen12bnitt
    This might have been already answered, so i am sorry if its a repeat question. i am running a springboot application and pinpoint agent is able to identify that its springboot and its able to monitor the rest api requests that comes to this springboot app.
    it also show all the SQL's fired and it has details about all the outbound http calls this app makes.. which is good..
    but what i dont find is, it does not give me trace info about all the methods that were called in that thread. Say rest api -> classA.method1() -> classA.method2() -> classB.method1() -> DB_query -> classB.method3() -> http_calls -> ClassC.method1()
    i see rest api, dbquery, classB.method3() and http_call
    so basically some methods are traced, but not everything.. So method that took time show up, but method that does not take a lot of time does not show up. So my question is, is this as designed?
    What logic does pinpoint uses to determine if a method needs to be show up in the trace or not? I am guessing we have some kind of cost of the method somehow..
    koo-taejin
    @koo-taejin

    @praveen12bnitt Pinpoint does not track all method.
    Tracking methods are information that Pinpoint think is meaningful.
    The Plugin information shows which methods are tracked.

    Keeping track of everything is not difficult.
    However, this is a burden on the application and makes it very difficult to find meaningful information.

    If you have additional information you would like to track
    profiler.include = This setting allows you to trace any method you want.

    I hope it's enough.

    Palanivelrajan Balasubramanian
    @praveen12bnitt
    I got it. I agree with u. Tracking every single method is going to add a lot of noice .
    But can u elaborate more on "pinpoint thinks it's meaningful". This will help me explain the behavior to my fellow co workers who have the same question
    In my case, we have a method called "tagOrder". There is nothing special in this method. Just that it took more time than other methods
    How did Pinpoint decide to show this method
    ?
    koo-taejin
    @koo-taejin
    @praveen12bnitt
    Each plug-in provides a library to track. (Most of each plugin supports one library.)
    You can find that what library is tracked in Pinpoint through this link. (https://github.com/naver/pinpoint/blob/master/doc/modules.md)
    Some library supports too even if it is not included link.
    VictorChirinosDasilva94
    @VictorChirinosDasilva94

    hello, I'm develop db2 plugin, i was try to create a interceptor for my plugin but the following error returns to me : ERROR Transformer:com.navercorp.pinpoint.profiler.plugin.MatchableClassFileTransformerGuardDelegate threw an exception. codeLocation:file:/X:/IBM/SQLLIB/java/db2jcc4.jar cl:com.ibm.ws.bootstrap.ExtClassLoader@7af689e1 ctxCl:
    com.ibm.ws.classloader.CompoundClassLoader@dc628a98[appwar:WC]
    ..
    Delegation Mode: PARENT_LAST agentCl:ParallelClassLoader{name='pinpoint.agent'} com.navercorp.pinpoint.bootstrap.classloader.ParallelClassLoader@60bad117 Cause:null
    java.lang.NullPointerException
    I suspect it's because the constructor I want to access is (protected)

    somebody can tell me what Class i have to use?

    constructor.PNG
    interceptor.PNG
    VictorChirinosDasilva94
    @VictorChirinosDasilva94
    db2Plugin.PNG
    trasform.PNG
    VictorChirinosDasilva94
    @VictorChirinosDasilva94
    2020-01-22 12:08:04 ERROR Transformer:com.navercorp.pinpoint.profiler.plugin.MatchableClassFileTransformerGuardDelegate threw an exception. codeLocation:file:/X:/IBM/SQLLIB/java/db2jcc4.jar cl:com.ibm.ws.bootstrap.ExtClassLoader@d2bf9836 ctxCl:
    com.ibm.ws.classloader.CompoundClassLoader@7e42578a[appwar:WC]
    Local ClassPath: X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Enablement-JCAHTTPConnector.rar;X:\IBM\WCDE80\workspace\WC\Enablement-JCAHTTPConnector.rar;X:\IBM\WCDE80\workspace\WC\Catalog-ProductManagementData.jar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Enablement-JCAHTTP-WSConnector.rar;X:\IBM\WCDE80\workspace\WC\Enablement-JCAHTTP-WSConnector.rar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Preview.war\WEB-INF\classes;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Preview.war;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Enablement-JCASampleConnector.rar;X:\IBM\WCDE80\workspace\WC\Enablement-JCASampleConnector.rar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Enablement-JCASmsHTTPConnector.rar;X:\IBM\WCDE80\workspace\WC\Enablement-JCASmsHTTPConnector.rar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Enablement-JCASmsWSConnector.rar;X:\IBM\WCDE80\workspace\WC\Enablement-JCASmsWSConnector.rar;X:\IBM\WCDE80\workspace\WC\Payments-EDP-Data.jar;X:\IBM\WCDE80\workspace\WC\Payments-Plugin-LOC.jar;X:\IBM\WCDE80\workspace\WC\Payments-Plugin-Paymentech.jar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\OrderServicesHTTPInterface.war\WEB-INF\classes;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\OrderServicesHTTPInterface.war;X:\IBM\WCDE80\workspace\WC\Marketing-CampaignsAndScenarioMarketingData.jar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\InitializationServlet.war\WEB-INF\classes;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\InitializationServlet.war;X:\IBM\WCDE80\workspace\SiteAdministration\WebContent\WEB-INF\classes;X:\IBM\WCDE80\workspace\SiteAdministration\WebContent;X:\IBM\WCDE80\workspace\WC\Order-Server.jar;X:\IBM\WCDE80\workspace\WC\Merchandising-PromotionsAndDiscountsData.jar;X:\IBM\WCDE80\workspace\WC\Order-OrderCaptureData.jar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\ContractServicesHTTPInterface.war\WEB-INF\classes;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\ContractServicesHTTPInterface.war;X:\IBM\WCDE80\workspace\WC\Marketing-ExperimentationManagementData.jar;X:\IBM\WCDE80\workspace\WC\Contract-Server.jar;X:\IBM\WCDE80\workspace\WC\Enablement-BaseComponentsData.jar;X:\IBM\WCDE80\workspace\WC\Order-OrderManagementData.jar;X:\IBM\WCDE80\workspace\WC\ContentManagement-WorkspaceFlowData.jar;X:\IBM\WCDE80\workspace\WC\Trading-AuctionsAndRFQsData.jar;X:\IBM\WCDE80\workspace\WebServicesRouter\WebContent\WEB-INF\classes;X:\IBM\WCDE80\workspace\WebServicesRouter\WebContent;X:\IBM\WCDE80\workspace\WC\Member-MemberManagementData.jar;X:\IBM\WCDE80\workspace\WC\Enablement-TicklerData.jar;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\CatalogServicesHTTPInterface.war\WEB-INF\classes;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\CatalogServicesHTTPInterface.war;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\MemberServicesHTTPInterface.war\WEB-INF\classes;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\MemberServicesHTTPInterface.war;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\InfrastructureServicesHTTPInterface.war;X:\IBM\WCDE80\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\WC\Enablement-JCAJMSConnector.rar;X:\IBM\WCDE80\workspace\WC\Enablement-JCAJMSConnector.rar;X:\IBM\WC
    Palanivelrajan Balasubramanian
    @praveen12bnitt
    Anyone tried to integrate a springboot app what will process mq messages via Apache Camel
    Since we have rabbitmq plugin , pinpoint show that the message is delivered to my app from rabbitmq.
    but after that, i dont see any trace..
    Apache Camel uses the org.apache.camel.component.rabbitmq.RabbitConsumer#handleDelivery to deliver message to application code.
    should i add this method to profiler.message.queue.client.handler.methods so start seeing more trace for the message processing?
    Kurt Zoglmann
    @zoglmannk
    Is the PinPoint Agent known to work with Java 11 and newer versions of Wildfly, such as 15.0.1? The documentation ( https://github.com/naver/pinpoint/tree/master/plugins/jboss#pinpoint-jboss-plugin-configuration ) states that we should use the -Xbootclasspath/p JVM option. However, that option has been removed since JDK9.
    We are using the -Xbootclasspath/a JVM option instead without success.
    koo-taejin
    @koo-taejin
    @praveen12bnitt
    I am not familiar with Apache Camel.
    But I don't think Pinpoint can be tracking it, even if you assign it to the settings.
    Because, I've looked at it briefly, the type of parameters the method has is different.
    koo-taejin
    @koo-taejin

    hi @VictorChirinosDasilva94
    The first parameter you specified in getConstructor is "nf".
    But the first parameter of the Connection constructor is shown as "lf".
    ("nf" vs "lf")

    By the way, Pinpoint can get all the constructors regardless of the Access Modifier.

    And if you make DB2 plugin, and you contribute it to us, then it will be great help for us.

    thanks :)

    SRE CloudNative
    @dinesh4747
    @koo-taejin @Xylus @RoySRose - I am facing issue in the Pinpoint call stack where all the method stack was displaying as API-META-DATA-NOT-FOUND and even increased the hbase apimetadata table TTL on a higher side but none of them helped out... Could someone pls help me in sharing the direction for this...
    VictorChirinosDasilva94
    @VictorChirinosDasilva94
    @koo-taejin question, WebSphere plugin trace the connection String of databases? if WebSphere is connect with DB2 database, i can see the connection string on the logs?, how my plugin DB2 get the connection string if i want monitoring Websphere with DB2?
    koo-taejin
    @koo-taejin

    @VictorChirinosDasilva94
    Each Plugin must track down range of library that they have.
    For above reason, If you want to get DB2's ConnectString, then It must be located in DB2Plugin.

    I don't known about how to get ConnectString in DB2.
    That's why someone needs to learn about the library to develop the plug-in.

    I think other jdbc-driver-plugin code will help you.
    Please refer to the following codes.

    com.navercorp.pinpoint.plugin.jdbc.mysql.interceptor.MySQLConnectionCreateInterceptor
    com.navercorp.pinpoint.bootstrap.plugin.jdbc.interceptor.DriverConnectInterceptorV2
    Fitz (Joongsoo.Park)
    @joongsoo

    @koo-taejin
    Hi. i'm joongsoo. I have a question about pinpoint internal code. (It may not be related to the pinpoint. sorry.)

    Pinpoint have interceptor for HttpUrlConnection.
    HttpUrlConnection is loaded by bootstrap classloader. but interceptor class is loaded by application classloader.

    So if inject "call interceptor method" bytecode to HttpUrlConnection class, it is not found interceptor class. => throw NoClassDefFoundError

    But pinpoint is not throw NoClassDefFoundError.
    My guess is that you load a class using a string in a similar way to Class.forName ().

    How did Pinpoint solve this problem?
    Am I misunderstanding pinpoint source code?

    Thank you.

    koo-taejin
    @koo-taejin
    @joongsoo
    I think this link might help you (naver/pinpoint#6138)
    If you have more question. please ask me again.
    Thanks :)
    Fitz (Joongsoo.Park)
    @joongsoo
    Oh. It was a great help. Thank you!
    VictorChirinosDasilva94
    @VictorChirinosDasilva94

    @koo-taejin
    Hello, i have a problem with Inject class interceptor to classpath :

    2020-03-05 10:53:32 WARN Failed to load plugin class com.navercorp.pinpoint.plugin.jdbc.db2.interceptor.Db2ConnectionCreateInterceptor with classLoader com.ibm.ws.bootstrap.ExtClassLoader@e5d94cfc
    java.lang.ClassNotFoundException: com.navercorp.pinpoint.plugin.jdbc.db2.interceptor.Db2ConnectionCreateInterceptor
    at java.net.URLClassLoader.findClass(URLClassLoader.java:600)
    at com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:243)
    at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:777)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:754)
    at com.ibm.ws.bootstrap.ExtClassLoader.loadClass(ExtClassLoader.java:134)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:731)
    at com.navercorp.pinpoint.profiler.instrument.classloading.URLClassLoaderHandler.injectClass(URLClassLoaderHandler.java:66)
    at com.navercorp.pinpoint.profiler.instrument.classloading.JarProfilerPluginClassInjector.injectClass(JarProfilerPluginClassInjector.java:57)

    help pleas :,c

    pinpoint_err2.PNG
    yjqg6666
    @yjqg6666
    @koo-taejin @Xylus @RoySRose We are currently using PinPoint 1.8.5 in test and production environment. We want to upgrade/migrate to Pinpoint version 2.0.1. My thought on this is first run a new collector and web of version 2.0.1, agent of version 2.0.1 send data to collector of version 2.