How To Connect to a running SB server and profile operator performance?

How To Connect to a running SB server and profile operator performance?

book

Article ID: KB0074810

calendar_today

Updated On:

Products Versions
TIBCO Streaming 7

Description

Is it possible to connect an external profiling tool to a running StreamBase server and profile the performance of the various operators?

Resolution

Yes. Run sbprofile to collect and report on adapter, operator, and queue performance and system resource usage.

Please see our sbprofile documentation here:
  StreamBase Documentation > StreamBase References > StreamBase Command Reference > sbprofile

And see general profiling guidance here:
  StreamBase Documentation > Administration Guide > Profiling Operators and Queues

To get an sbprofile log, run the following command alongside a running LiveView server:
  sbprofile -u<sb://host:port> -c profile.log

Start sbprofile shortly after TIBCO Streaming or StreamBase server startup, once it has reported "Listening" in the console log and let it run until a problem is observed. It may be stopped with Control-C (^C) or will stop automatically when the server stops.

The log contains one update per second for every operator and queue, as well as server statistics, so can be large. The -c option uses gzip compression on the output log file.

To interpret the log, see "Meanings of the Profiling Statistics Collected" on StreamBase Help page:
  StreamBase Documentation > Administration Guide > Monitoring and Profiling Applications > Profiling

You may also use a general-purpose tool like JProfiler for sampling based time profiling, but since adapter, operator, and stream names may not be clear it can be some work to understand what is reported. General purpose tools, like JProfiler and JConsole, are better suited for monitoring overall JVM performance.

Issue/Introduction

How To Connect to a running SB server and profile operator performance?