public static void SendLogToServer() { StoreGame.ClearLog(); for (int i = 0; i < entriesConsole.Count; i++) { StoreGame.SaveLog(StoreGame.EType.DEBUG_LOG, entriesConsole[i].message); } string url = ServerWeb.URL_REQUEST_ERROR; string data = ConvertStringToJson(StoreGame.LoadString(StoreGame.EType.DEBUG_LOG)); WWWForm form = new WWWForm(); form.AddField("app_id", GameManager.GAME.ToString()); form.AddField("game_version", GameSettings.CurrentVersion); if (GameManager.CurrentScene != ESceneName.LoginScreen) { form.AddField("user_id", GameManager.Instance.mInfo.id); form.AddField("username", GameManager.Instance.mInfo.username); } form.AddField("scene", GameManager.CurrentScene.ToString()); form.AddField("error", ""); form.AddField("detail", ""); form.AddField("environment", Common.GetDevice); form.AddField("debug_log", data); form.AddField(ServerWeb.PARAM_PARTNER_ID, GameSettings.Instance.ParnerCodeIdentifier); ServerWeb.StartThread(url, form, null); }
/// <summary> /// Logged messages are sent through this callback function. /// </summary> /// <param name="message">The message itself.</param> /// <param name="stackTrace">A trace of where the message came from.</param> /// <param name="type">The type of message: error/exception, warning, or assert.</param> void HandleLog(string message, string stackTrace, LogType type) { ConsoleMessage entry = new ConsoleMessage(message, stackTrace, type); entries.Add(entry); if (entries.Count > LIMIT_LINE) { entries.RemoveAt(0); } if (GameManager.CurrentScene == ESceneName.GameplayChan && type == LogType.Exception) { WaitingView.Show("Có l?i x?y ra. Vui lòng d?i!"); GameManager.Server.DoRequestGameCommand("refreshGame"); } entriesConsole.Add(entry); if (entriesConsole.Count > LIMIT_LINE_CONSOLE) { entriesConsole.RemoveAt(0); } if (type == LogType.Error && !message.StartsWith("Coroutine couldn't be started because the the game object")) { StoreGame.ClearLog(); for (int i = 0; i < entries.Count; i++) { StoreGame.SaveLog(StoreGame.EType.DEBUG_LOG, entries[i].message); } //SaveLogToFile(); //for test string url = ServerWeb.URL_REQUEST_ERROR; string data = ConvertStringToJson(StoreGame.LoadString(StoreGame.EType.DEBUG_LOG)); WWWForm form = new WWWForm(); form.AddField("app_id", GameManager.GAME.ToString()); form.AddField("game_version", GameSettings.CurrentVersion); if (GameManager.CurrentScene != ESceneName.LoginScreen) { form.AddField("user_id", GameManager.Instance.mInfo.id); form.AddField("username", GameManager.Instance.mInfo.username); } form.AddField("scene", GameManager.CurrentScene.ToString()); form.AddField("error", ""); form.AddField("detail", ""); form.AddField("environment", Common.GetDevice); form.AddField("debug_log", data); form.AddField(ServerWeb.PARAM_PARTNER_ID, GameSettings.Instance.ParnerCodeIdentifier); if (!listSendError.Contains(form)) { listSendError.Add(form); ServerWeb.StartThread(url, form, null); } } }
public static void SaveLogToFile() { StoreGame.ClearLog(); for (int i = 0; i < entriesConsole.Count; i++) { StoreGame.SaveLog(StoreGame.EType.DEBUG_LOG, entriesConsole[i].message); } if (StoreGame.Contains(StoreGame.EType.DEBUG_LOG)) { SaveAndLoadFile.Save(StoreGame.LoadString(StoreGame.EType.DEBUG_LOG)); } }