| | |
| | | |
| | | const int timeOut = 20;//秒 |
| | | |
| | | public static DateTime got0102Time = DateTime.MinValue; |
| | | public static DateTime gotA126Time = DateTime.MinValue; |
| | | public static DateTime gotA127Time = DateTime.MinValue; |
| | | public static DateTime got0109Time = DateTime.MinValue; |
| | | public static DateTime send0107Time = DateTime.MinValue; |
| | | public static ProtocolRecorder got0102Time; |
| | | public static ProtocolRecorder gotA126Time; |
| | | public static ProtocolRecorder gotA127Time; |
| | | public static ProtocolRecorder got0109Time; |
| | | public static ProtocolRecorder send0107Time; |
| | | |
| | | public static StageLoadTimeOutCatcher Begin(int stageId) |
| | | { |
| | |
| | | var description = StringUtility.Contact( |
| | | "开始时间:", startTime.ToString("HH:mm:ss"), ";", |
| | | "超时时间:", DateTime.Now.ToString("HH:mm:ss"), |
| | | "0102时间:", got0102Time.ToString("HH:mm:ss"), ";", |
| | | "A126时间:", gotA126Time.ToString("HH:mm:ss"), ";", |
| | | "A127时间:", gotA127Time.ToString("HH:mm:ss"), ";", |
| | | "0109时间:", got0109Time.ToString("HH:mm:ss"), ";", |
| | | "0107时间:", send0107Time.ToString("HH:mm:ss")); |
| | | "0102记录:", got0102Time.ToString(), ";", |
| | | "A126记录:", gotA126Time.ToString(), ";", |
| | | "A127记录:", gotA127Time.ToString(), ";", |
| | | "0109记录:", got0109Time.ToString(), ";", |
| | | "0107记录:", send0107Time.ToString()); |
| | | |
| | | ExceptionCatcher.ReportException(title, description); |
| | | Stop(); |
| | | } |
| | | } |
| | | |
| | | public static void ReportChangeMapRecord(GameNetSystem.SocketType socketType, string protocol, DateTime time) |
| | | public static void RecordProtocol(GameNetSystem.SocketType socketType, string number, DateTime time) |
| | | { |
| | | var recorder = new ProtocolRecorder(number, time, socketType); |
| | | switch (number) |
| | | { |
| | | case "0102": |
| | | got0102Time = recorder; |
| | | break; |
| | | case "A126": |
| | | gotA126Time = recorder; |
| | | break; |
| | | case "A127": |
| | | gotA127Time = recorder; |
| | | break; |
| | | case "0109": |
| | | got0109Time = recorder; |
| | | break; |
| | | case "0107": |
| | | send0107Time = recorder; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | |
| | | try |
| | | { |
| | | var title = StringUtility.Contact("地图加载记录-->协议编号:", protocol); |
| | | var description = StringUtility.Contact("服务器:", socketType, ";", |
| | | "协议编号:", protocol, ";", "时间:", time.ToString("HH:mm:ss"), "玩家:", PlayerDatas.Instance.baseData.PlayerName); |
| | | var title = StringUtility.Contact("地图加载记录-->封包编号:", number); |
| | | var description = StringUtility.Contact(recorder.ToString(), "玩家:", PlayerDatas.Instance.baseData.PlayerName); |
| | | |
| | | ExceptionCatcher.ReportException(title, description); |
| | | } |
| | |
| | | { |
| | | |
| | | } |
| | | } |
| | | |
| | | public struct ProtocolRecorder |
| | | { |
| | | public string number; |
| | | public DateTime time; |
| | | public GameNetSystem.SocketType socketType; |
| | | |
| | | public ProtocolRecorder(string number, DateTime time, GameNetSystem.SocketType socketType) |
| | | { |
| | | this.number = number; |
| | | this.time = time; |
| | | this.socketType = socketType; |
| | | } |
| | | |
| | | public override string ToString() |
| | | { |
| | | return StringUtility.Contact("封包:", number, ";", "时间:", time.ToString("HH:mm:ss"), ";", "服务器:", socketType); |
| | | } |
| | | } |
| | | |
| | | } |