Example #1
0
        public void NetTrace_Default_Config()
        {
            _NetTraceSink  sink;
            NetTracePacket packet;

            try
            {
                sink = new _NetTraceSink();
                Config.SetConfig(null);
                NetTrace.Start();
                NetTrace.Enable("subsystem", 10);

                NetTraceSink.Start(new NetTraceSinkDelegate(sink.OnReceive));

                NetTrace.Write("subsystem", 10, "event", "summary", "details");
                sink.Wait(1);
                packet = sink.Dequeue();

                Assert.AreEqual("subsystem", packet.Subsystem);
                Assert.AreEqual(10, packet.Detail);
                Assert.AreEqual("event", packet.Event);
                Assert.AreEqual("summary", packet.Summary);
                Assert.AreEqual("details", packet.Details);
            }
            finally
            {
                NetTrace.Stop();
            }
        }
Example #2
0
        public void NetTrace_Setting_Config()
        {
            _NetTraceSink  sink;
            NetTracePacket packet;

            try
            {
                sink = new _NetTraceSink();
                Config.SetConfig(@"

Diagnostics.TraceEP        = 231.222.0.77:44411
Diagnostics.TraceAdapter   = $(ip-address)
Diagnostics.TraceEnable[0] = 255:subsystem
");

                NetTrace.Start();
                NetTraceSink.Start(new NetTraceSinkDelegate(sink.OnReceive));

                NetTrace.Write("subsystem", 255, "event", "summary", "details");
                sink.Wait(1);
                packet = sink.Dequeue();

                Assert.AreEqual("subsystem", packet.Subsystem);
                Assert.AreEqual(255, packet.Detail);
                Assert.AreEqual("event", packet.Event);
                Assert.AreEqual("summary", packet.Summary);
                Assert.AreEqual("details", packet.Details);
                Assert.AreEqual(44411, packet.SourceEP.Port);
            }
            finally
            {
                NetTrace.Stop();
            }
        }
Example #3
0
        /// <summary>
        /// Called on form load.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="args"></param>
        private void MainForm_Load(object sender, System.EventArgs args)
        {
            DataColumnCollection  dtColumns;
            DataGridTableStyle    dgStyle;
            DataGridTextBoxColumn col;

            // Initialize the data table and set

            dtCapture = new DataTable("capture");
            dtColumns = dtCapture.Columns;
            dtColumns.Add("Time", typeof(DateTime));
            dtColumns.Add("SourceEP", typeof(string));
            dtColumns.Add("Event", typeof(string));
            dtColumns.Add("Summary", typeof(string));
            dtColumns.Add("Details", typeof(string));

            // Bind these to the trace grid

            TraceList.DataSource = dtCapture;

            // Configure the grid columns

            dgStyle              = new DataGridTableStyle();
            dgStyle.MappingName  = dtCapture.TableName;
            dgStyle.ReadOnly     = true;
            dgStyle.AllowSorting = false;

            // Time

            col             = new DataGridTextBoxColumn();
            col.Alignment   = HorizontalAlignment.Center;
            col.HeaderText  = "Time (UTC)";
            col.MappingName = "Time";
            col.NullText    = string.Empty;
            col.ReadOnly    = true;
            col.Width       = 100;
            col.Format      = "HH:mm:ss.fff";
            dgStyle.GridColumnStyles.Add(col);

            // SourceEP

            col             = new DataGridTextBoxColumn();
            col.Alignment   = HorizontalAlignment.Center;
            col.HeaderText  = "SourceEP";
            col.MappingName = "SourceEP";
            col.NullText    = string.Empty;
            col.ReadOnly    = true;
            col.Width       = 75;
            dgStyle.GridColumnStyles.Add(col);

            // Event

            col             = new DataGridTextBoxColumn();
            col.Alignment   = HorizontalAlignment.Left;
            col.HeaderText  = "Event";
            col.MappingName = "Event";
            col.NullText    = string.Empty;
            col.ReadOnly    = true;
            col.Width       = 225;
            dgStyle.GridColumnStyles.Add(col);

            // Summary

            col             = new DataGridTextBoxColumn();
            col.Alignment   = HorizontalAlignment.Left;
            col.HeaderText  = "Summary";
            col.MappingName = "Summary";
            col.NullText    = string.Empty;
            col.ReadOnly    = true;
            col.Width       = 1600;
            dgStyle.GridColumnStyles.Add(col);

            // Details (hidden)

            col             = new DataGridTextBoxColumn();
            col.Alignment   = HorizontalAlignment.Left;
            col.HeaderText  = "Details";
            col.MappingName = "Details";
            col.NullText    = string.Empty;
            col.ReadOnly    = true;
            col.Width       = 0;
            dgStyle.GridColumnStyles.Add(col);

            TraceList.TableStyles.Clear();
            TraceList.TableStyles.Add(dgStyle);

            // Complete the initialization

            isRunning     = true;
            captureFile   = false;
            captureWriter = null;
            SetUIState();

            onTraceUI = new NetTraceSinkDelegate(OnTraceUI);
            NetTraceSink.Start(new NetTraceSinkDelegate(OnTrace));

#if SIMPACKETS
            NetTrace.Start();
            timer = new GatedTimer(new TimerCallback(OnTimer), null, TimeSpan.FromTicks(0), TimeSpan.FromSeconds(5.0));
#endif
        }