示例#1
0
 public ServerLog(string logText, string controller, string action, ServerLogType type = ServerLogType.INFO)
 {
     LogText        = logText;
     ControllerName = controller;
     ActionName     = action;
     Type           = type;
 }
示例#2
0
        private void AddLog(string msg, ServerLogType type)
        {
            string time = TimeBehaviour.FormatTime("yyyy-MM-dd HH:mm:ss zzz");

            logs.Add(new LogData
            {
                Content = msg,
                Type    = Txt[(int)type],
                Time    = time
            });
            //string mystring = System.Reflection.Assembly.GetAssembly(this.GetType()).Location;
            if (CheckExistingFolders())
            {
                string text = string.Empty;
                foreach (LogData log in logs)
                {
                    if (!log.Saved)
                    {
                        log.Saved = true;
                        string text2 = text;
                        text = text2 + log.Time + " | " + ToMax(log.Type, _maxlen) + " | " + log.Content + Environment.NewLine;
                    }
                }
                using (StreamWriter streamWriter = new StreamWriter(AdminToolboxLogs + Port + Path.DirectorySeparatorChar + _logStartTime + "_Round-" + AdminToolbox.RoundCount + ".txt", true))
                {
                    streamWriter.Write(text);
                }
            }
        }
示例#3
0
 public ServerLog(string logText, string controller, string action, ServerLogType type = ServerLogType.INFO)
 {
     EventDate      = DateTime.Now;
     LogText        = logText;
     ControllerName = controller;
     ActionName     = action;
     Type           = type;
 }
示例#4
0
 public ServerLogItem(DateTime date, ServerLogType type, Type sender, string infoType, string information)
 {
     Date              = date;
     Type              = type;
     SenderTypeMemory  = (sender ?? throw new ArgumentNullException(nameof(sender))).FullName.AsMemory();
     InfoTypeMemory    = infoType.AsMemory();
     InformationMemory = information.AsMemory();
 }
示例#5
0
        public DeleteServerLog(ObservableCollection<string> sloc, ServerLogType windowType = ServerLogType.Delete)
        {
            InitializeComponent();

            _serverLogOc = sloc;

            DataContext = this;

            _windowType = windowType;
        }
示例#6
0
        /// <summary>
        /// Appends <see cref="string"/> <see cref="Array"/> to the <see cref="AdminToolbox"/> log.
        /// </summary>
        internal void WriteToLog(string[] str, ServerLogType logType = ServerLogType.Misc)
        {
            string str2 = string.Empty;

            if (str.Length != 0)
            {
                foreach (string st in str)
                {
                    str2 += st;
                }
            }
            WriteToLog(str2, logType);
        }
示例#7
0
        public void AddLog(string msg, ServerLogType type)
        {
            _port = PluginManager.Manager.Server.Port;
            string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss zzz");

            logs.Add(new LogHandler
            {
                Content = msg,
                Type    = Txt[(int)type],
                Time    = time
            });
            string mystring = System.Reflection.Assembly.GetAssembly(this.GetType()).Location;

            if (Directory.Exists(FileManager.GetAppFolder()))
            {
                if (!Directory.Exists(AdminToolboxFolder))
                {
                    Directory.CreateDirectory(AdminToolboxFolder);
                }
                if (!Directory.Exists(AdminToolboxLogs))
                {
                    Directory.CreateDirectory(AdminToolboxLogs);
                }
                if (Directory.Exists(FileManager.GetAppFolder() + "ATServerLogs"))
                {
                    MoveOldFiles();
                }
                if (!Directory.Exists(AdminToolboxLogs + Path.DirectorySeparatorChar + _port))
                {
                    Directory.CreateDirectory(AdminToolboxLogs + Path.DirectorySeparatorChar + _port);
                }

                string text = string.Empty;
                foreach (LogHandler log in logs)
                {
                    if (!log.Saved)
                    {
                        log.Saved = true;
                        string text2 = text;
                        text = text2 + log.Time + " | " + ToMax(log.Type, _maxlen) + " | " + log.Content + Environment.NewLine;
                    }
                }
                using (StreamWriter streamWriter = new StreamWriter(AdminToolboxLogs + Path.DirectorySeparatorChar + _port + Path.DirectorySeparatorChar + AdminToolbox._roundStartTime + "_Round-" + AdminToolbox.roundCount + ".txt", true))
                {
                    streamWriter.Write(text);
                    streamWriter.Close();
                }
            }
        }
示例#8
0
        /// <summary>
        /// Appends <see cref="string"/> to the <see cref="AdminToolbox"/> log.
        /// </summary>
        internal void WriteToLog(string str, ServerLogType logType = ServerLogType.Misc)
        {
            switch (logType)
            {
            case ServerLogType.TeamKill:
                if (Config.GetBoolValue("admintoolbox_log_teamkills", false, false))
                {
                    AddLog(str, logType);
                }
                break;

            case ServerLogType.KillLog:
                if (Config.GetBoolValue("admintoolbox_log_kills", false, false))
                {
                    AddLog(str, logType);
                }
                break;

            case ServerLogType.RemoteAdminActivity:
                if (Config.GetBoolValue("admintoolbox_log_commands", false, false))
                {
                    AddLog(str, logType);
                }
                break;

            case ServerLogType.PlayerDamage:
                if (Config.GetBoolValue("admintoolbox_log_damage", false, false))
                {
                    AddLog(str, logType);
                }
                break;

            default:
                AddLog(str, logType);
                break;
            }
        }
示例#9
0
        public void AddLog(string msg, ServerLogType type)
        {
            _port = PluginManager.Manager.Server.Port;
            string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss zzz");

            logs.Add(new LogHandler
            {
                Content = msg,
                Type    = Txt[(int)type],
                Time    = time
            });
            if (Directory.Exists(FileManager.AppFolder))
            {
                if (!Directory.Exists(FileManager.AppFolder + "ATServerLogs"))
                {
                    Directory.CreateDirectory(FileManager.AppFolder + "ATServerLogs");
                }
                if (!Directory.Exists(FileManager.AppFolder + "ATServerLogs/" + _port))
                {
                    Directory.CreateDirectory(FileManager.AppFolder + "ATServerLogs/" + _port);
                }
                StreamWriter streamWriter = new StreamWriter(FileManager.AppFolder + "ATServerLogs" + "/" + _port + "/" + AdminToolbox._roundStartTime + " Round " + AdminToolbox.roundCount + ".txt", true);
                string       text         = string.Empty;
                foreach (LogHandler log in logs)
                {
                    if (!log.Saved)
                    {
                        log.Saved = true;
                        string text2 = text;
                        text = text2 + log.Time + " | " + ToMax(log.Type, _maxlen) + " | " + log.Content + Environment.NewLine;
                    }
                }
                streamWriter.Write(text);
                streamWriter.Close();
            }
        }
示例#10
0
 public static void Add(ServerLogType type, Type sender, string infoType, string mask, params object?[] data)
 {
     Add(new ServerLogItem(type, sender, infoType, mask: mask, data: data));
 }
示例#11
0
 public static void Add(ServerLogType type, Type sender, string infoType, string information)
 {
     Add(new ServerLogItem(type, sender, infoType, information));
 }
示例#12
0
 public ServerLog(string logText, ServerLogType type = ServerLogType.INFO)
 {
     EventDate = DateTime.Now;
     LogText   = logText;
     Type      = type;
 }
示例#13
0
 public static void WriteLog(string logText, string controller, string action, ServerLogType type = ServerLogType.INFO)
 {
     WriteLog(new ServerLog(logText, controller, action, type));
 }
示例#14
0
 public static void WriteLog(string logText, ServerLogType type = ServerLogType.INFO)
 {
     WriteLog(new ServerLog(logText, type));
 }
示例#15
0
 public ServerLogItem(ServerLogType type, Type sender, string infoType, string mask, params object?[] data)
     : this(type, sender, infoType, string.Format(mask, data))
 {
 }
示例#16
0
 public ServerLogItem(ServerLogType type, Type sender, string infoType, string information)
     : this(DateTime.Now, type, sender, infoType, information)
 {
 }