Example #1
0
        private static void WriteEntry(LOG_LEVELS level, string msg, bool millisec)
        {
            string outstr;

            lock (logger_lock) {
                if (level <= Level)
                {
                    outstr = "";
                    if (TimeStamps)
                    {
                        if (millisec)
                        {
                            outstr = DateTime.Now.ToShortDateString() + " " + DateTime.Now.TimeOfDay.ToString() + "\t";
                        }
                        else
                        {
                            outstr = DateTime.Now.ToString() + "\t ";
                        }
                    }
                    outstr += msg;

                    if (!pause)
                    {
                        if (listeners != null)
                        {
                            listeners.DynamicInvoke(outstr);
                        }
                        if (clients != null)
                        {
                            clients.DynamicInvoke(level, outstr);
                        }
                    }

                    if (Enabled)
                    {
                        logEntry entry = new logEntry();

                        entry.TimeStamp = DateTime.Now;
                        entry.Message   = msg;
                        Events.Add(entry);

                        // Only 100000 events to be saved
                        if (Events.Count > 100000)
                        {
                            Events.RemoveAt(0);
                            if (index > 0)
                            {
                                index--;
                            }
                        }
                    }
                }
            }
        }
Example #2
0
        public void enqueueEntry(string text)
        {
            DateTime dt    = DateTime.Now;
            logEntry entry = new logEntry();

            entry.dt      = dt;
            entry.logText = text;

            eventQueue.Enqueue(entry);

            if (!workerThread.IsAlive)
            {
                workerThread = new Thread(writer.doWork);
                workerThread.Start();
            }
            else
            {
            }
        }
Example #3
0
        private static void _log(LOG_LEVELS level, string function, string message)
        {
            string out_msg = "";

            if (TimeStamps)
            {
                out_msg = DateTime.Now.ToString() + "\t ";
            }

            out_msg += message;

            if (listeners != null)
            {
                listeners.DynamicInvoke(out_msg);
            }

            if (clients != null)
            {
                clients.DynamicInvoke(level, out_msg);
            }

            if (Enabled)
            {
                logEntry entry = new logEntry();

                entry.TimeStamp = DateTime.Now;
                entry.Message   = message;
                entry.Function  = function;
                Events.Add(entry);

                // Only 100000 events to be saved
                if (Events.Count > 100000)
                {
                    Events.RemoveAt(0);
                    if (index > 0)
                    {
                        index--;
                    }
                }
            }
        }