Fennel: JavaTraceTarget Class Reference (original) (raw)
JavaTraceTarget implements TraceTarget by calling back into the java.util.logging facility. More...
#include <[JavaTraceTarget.h](JavaTraceTarget%5F8h-source.html)>
Inheritance diagram for JavaTraceTarget:

| Public Member Functions | |
|---|---|
| JavaTraceTarget () | |
| JavaTraceTarget (jobject javaTraceInit, jmethodID methTraceInit, jmethodID methGetSourceTraceLevelInit) | |
| virtual | ~JavaTraceTarget () |
| virtual void | notifyTrace (std::string source, TraceLevel level, std::string message) |
| Receives notification when a trace event occurs. | |
| virtual TraceLevel | getSourceTraceLevel (std::string source) |
| Gets the level at which a particular source should be traced. | |
| virtual void | beginSnapshot () |
| Begins recording a snapshot. | |
| virtual void | endSnapshot () |
| Finishes recording a snapshot. | |
| virtual void | writeCounter (std::string name, int64_t value) |
| Writes one int counter. | |
| virtual void | onThreadStart () |
| Receives notification that stats polling is starting via a TimerThread. | |
| virtual void | onThreadEnd () |
| Receives notification that stats polling via a TimerThread is ending. | |
| Private Attributes | |
| jobject | javaTrace |
| net.sf.farrago.util.NativeTrace object to which trace messages should be written. | |
| jmethodID | methTrace |
| Method NativeTrace.trace. | |
| jmethodID | methGetSourceTraceLevel |
| Method NativeTrace.getSourceTraceLevel. |
Detailed Description
JavaTraceTarget implements TraceTarget by calling back into the java.util.logging facility.
It also implements StatsTarget by converting performance counter updates into trace events which are published inside of Java.
Definition at line 39 of file JavaTraceTarget.h.
Constructor & Destructor Documentation
| JavaTraceTarget::JavaTraceTarget | ( | | ) | [explicit] | | -------------------------------- | - | | - | ------------ |
Definition at line 33 of file JavaTraceTarget.cpp.
References JniUtil::incrementHandleCount(), javaTrace, methGetSourceTraceLevel, and methTrace.
00034 {
00035 JniEnvAutoRef pEnv;
00036 jclass classNativeTrace = pEnv->FindClass(
00037 "net/sf/farrago/util/NativeTrace");
00038
00039 jmethodID methInstance =
00040 pEnv->GetStaticMethodID(
00041 classNativeTrace, "instance",
00042 "()Lnet/sf/farrago/util/NativeTrace;");
00043
00044 jobject javaTraceInit =
00045 pEnv->CallStaticObjectMethod(classNativeTrace, methInstance);
00046
00047 JniUtil::incrementHandleCount(JAVATRACETARGET_TYPE_STR, this);
00048 javaTrace = pEnv->NewGlobalRef(javaTraceInit);
00049
00050
00051 assert(javaTrace);
00052
00053 methTrace = pEnv->GetMethodID(
00054 classNativeTrace,"trace",
00055 "(Ljava/lang/String;ILjava/lang/String;)V");
00056 methGetSourceTraceLevel = pEnv->GetMethodID(
00057 classNativeTrace,"getSourceTraceLevel",
00058 "(Ljava/lang/String;)I");
00059 }
| JavaTraceTarget::JavaTraceTarget | ( | jobject | javaTraceInit, |
|---|---|---|---|
| jmethodID | methTraceInit, | ||
| jmethodID | methGetSourceTraceLevelInit | ||
| ) | [explicit] |
| JavaTraceTarget::~JavaTraceTarget | ( | | ) | [virtual] | | ---------------------------------- | - | | - | ----------- |
Member Function Documentation
| void JavaTraceTarget::notifyTrace | ( | std::string | source, |
|---|---|---|---|
| TraceLevel | level, | ||
| std::string | message | ||
| ) | [virtual] |
| TraceLevel JavaTraceTarget::getSourceTraceLevel | ( | std::string | source | ) | [virtual] |
|---|
| void JavaTraceTarget::beginSnapshot | ( | | ) | [virtual] | | ----------------------------------- | - | | - | ----------- |
| void JavaTraceTarget::endSnapshot | ( | | ) | [virtual] | | --------------------------------- | - | | - | ----------- |
| void JavaTraceTarget::writeCounter | ( | std::string | name, |
|---|---|---|---|
| int64_t | value | ||
| ) | [virtual] |
| void JavaTraceTarget::onThreadStart | ( | | ) | [virtual] | | ----------------------------------- | - | | - | ----------- |
| void JavaTraceTarget::onThreadEnd | ( | | ) | [virtual] | | --------------------------------- | - | | - | ----------- |
Member Data Documentation
The documentation for this class was generated from the following files:
- /home/pub/open/dev/fennel/farrago/JavaTraceTarget.h
- /home/pub/open/dev/fennel/farrago/JavaTraceTarget.cpp
