/// <summary> /// 消息树构建 由插件调用 应用不需要关心这个方法 /// </summary> /// <returns></returns> public static RemotionCallContext logRemoteCallClient() { IMessageTree tree = Jasmine.GetManager().GetMessageTree(CallContextManager.MessageTreeId); String messageId = tree.MessageId; if (messageId == null) { messageId = Jasmine.GetProducer().CreateMessageId(); tree.MessageId = messageId; } String childId = Jasmine.GetProducer().CreateMessageId(); Jasmine.Event(JasmineConstants.TYPE_REMOTE_CALL, "", "0", childId); String root = tree.RootMessageId; if (root == null) { root = messageId; } return(new RemotionCallContext() { ChildMessageId = childId, ParentMessageId = messageId, RootMessageId = root }); //ctx.AddProperty(CatContext.ROOT, root); //ctx.AddProperty(CatContext.PARENT, messageId); //ctx.AddProperty(CatContext.CHILD, childId); }
/// <summary> /// 消息树构建 由插件调用 应用不需要关心这个方法 /// </summary> /// <param name="ctx"></param> public static void logRemoteCallServer(RemotionCallContext ctx) { IMessageTree tree = Jasmine.GetManager().GetMessageTree(CallContextManager.MessageTreeId); String childMessageId = ctx.ChildMessageId; String rootId = ctx.RootMessageId; String parentId = ctx.ParentMessageId; if (childMessageId != null) { tree.MessageId = childMessageId; } if (parentId != null) { tree.ParentMessageId = parentId; } if (rootId != null) { tree.RootMessageId = rootId; } String childId = Jasmine.GetProducer().CreateMessageId(); Jasmine.Event(JasmineConstants.TYPE_REMOTE_CALL, "", "0", childId); }
public static ITransaction NewTransaction(string type, string name) { return(Jasmine.GetProducer().NewTransaction(type, name, CallContextManager.MessageTreeId)); }
public static IEvent NewEvent(string type, string name) { return(Jasmine.GetProducer().NewEvent(type, name, CallContextManager.MessageTreeId)); }
private static void LogMetricInternal(string name, string status, string keyValuePairs = null) { Jasmine.GetProducer().LogMetric(name, status, keyValuePairs, CallContextManager.MessageTreeId); }
private static void Heartbeat(string type, string name, string status = "0", string nameValuePairs = null) { Jasmine.GetProducer().LogHeartbeat(type, name, status, nameValuePairs, CallContextManager.MessageTreeId); }
public static void Event(string type, string name, string status = "0", string nameValuePairs = null) { Jasmine.GetProducer().LogEvent(type, name, status, nameValuePairs, CallContextManager.MessageTreeId); }
public static void Error(Exception ex) { Jasmine.GetProducer().LogError(ex, CallContextManager.MessageTreeId); }