public interface MessageProducer
Message factory is used to create new transaction,event and/or heartbeat.
Normally, application code logs message in following ways, for example:
public class MyClass {
public static MessageFactory CAT = Cat.getFactory();
public void bizMethod() {
Event event = CAT.newEvent("Review", "New");
event.addData("id", 12345);
event.addData("user", "john");
...
event.setStatus("0");
event.complete();
}
...
}
public class MyClass {
public static MessageFactory CAT = Cat.getFactory();
public void bizMethod() {
Heartbeat event = CAT.newHeartbeat("System", "Status");
event.addData("ip", "192.168.10.111");
event.addData("host", "host-1");
event.addData("load", "2.1");
event.addData("cpu", "0.12,0.10");
event.addData("memory.total", "2G");
event.addData("memory.free", "456M");
event.setStatus("0");
event.complete();
}
...
}
public class MyClass {
public static MessageFactory CAT = Cat.getFactory();
public void bizMethod() {
Transaction t = CAT.newTransaction("URL", "MyPage");
try {
// do your business here
t.addData("k1", "v1");
t.addData("k2", "v2");
t.addData("k3", "v3");
Thread.sleep(30);
t.setStatus("0");
} catch (Exception e) {
t.setStatus(e);
} finally {
t.complete();
}
}
...
}
or logs event or heartbeat in one shot, for example:
public class MyClass {
public static MessageFactory CAT = Cat.getFactory();
public void bizMethod() {
CAT.logEvent("Review", "New", "0", "id=12345&user=john");
}
...
}
public class MyClass {
public static MessageFactory CAT = Cat.getFactory();
public void bizMethod() {
CAT.logHeartbeat("System", "Status", "0", "ip=192.168.10.111&host=host-1&load=2.1&cpu=0.12,0.10&memory.total=2G&memory.free=456M");
}
...
}
| 限定符和类型 | 方法和说明 |
|---|---|
String |
createMessageId()
Create a new message id.
|
String |
createRpcServerId(String domain)
Create rpc server message id.
|
boolean |
isEnabled()
Check if the CAT client is enabled for current domain.
|
void |
logError(String message,
Throwable cause)
Log an error.
|
void |
logError(Throwable cause)
Log an error.
|
void |
logEvent(String type,
String name)
Log an event in one shot with SUCCESS status.
|
void |
logEvent(String type,
String name,
String status,
String nameValuePairs)
Log an event in one shot.
|
void |
logHeartbeat(String type,
String name,
String status,
String nameValuePairs)
Log a heartbeat in one shot.
|
void |
logMetric(String name,
String status,
String nameValuePairs)
Log a metric in one shot.
|
void |
logTrace(String type,
String name)
Log an trace in one shot with SUCCESS status.
|
void |
logTrace(String type,
String name,
String status,
String nameValuePairs)
Log an trace in one shot.
|
Event |
newEvent(String type,
String name)
Create a new event with given type and name.
|
ForkedTransaction |
newForkedTransaction(String type,
String name)
Create a forked transaction for child thread.
|
Heartbeat |
newHeartbeat(String type,
String name)
Create a new heartbeat with given type and name.
|
Metric |
newMetric(String type,
String name)
Create a new metric with given type and name.
|
TaggedTransaction |
newTaggedTransaction(String type,
String name,
String tag)
Create a tagged transaction for another process or thread.
|
Trace |
newTrace(String type,
String name)
Create a new trace with given type and name.
|
Transaction |
newTransaction(String type,
String name)
Create a new transaction with given type and name.
|
String createRpcServerId(String domain)
domain is the rpc server
String createMessageId()
boolean isEnabled()
void logError(String message, Throwable cause)
cause - root cause exceptionvoid logError(Throwable cause)
cause - root cause exceptionvoid logEvent(String type, String name)
type - event typename - event namevoid logEvent(String type, String name, String status, String nameValuePairs)
type - event typename - event namestatus - "0" means success, otherwise means error codenameValuePairs - name value pairs in the format of "a=1&b=2&..."void logHeartbeat(String type, String name, String status, String nameValuePairs)
type - heartbeat typename - heartbeat namestatus - "0" means success, otherwise means error codenameValuePairs - name value pairs in the format of "a=1&b=2&..."void logMetric(String name, String status, String nameValuePairs)
name - metric namestatus - "0" means success, otherwise means error codenameValuePairs - name value pairs in the format of "a=1&b=2&..."void logTrace(String type, String name)
type - trace typename - trace namevoid logTrace(String type, String name, String status, String nameValuePairs)
type - trace typename - trace namestatus - "0" means success, otherwise means error codenameValuePairs - name value pairs in the format of "a=1&b=2&..."Event newEvent(String type, String name)
type - event typename - event nameForkedTransaction newForkedTransaction(String type, String name)
type - transaction typename - transaction nameHeartbeat newHeartbeat(String type, String name)
type - heartbeat typename - heartbeat nameMetric newMetric(String type, String name)
type - metric typename - metric nameTaggedTransaction newTaggedTransaction(String type, String name, String tag)
type - transaction typename - transaction nametag - tag applied to the transactionTrace newTrace(String type, String name)
type - trace typename - trace nameTransaction newTransaction(String type, String name)
type - transaction typename - transaction nameCopyright © 2022. All rights reserved.