public DiagnosticsGroup AddGroup(string name, params object[] formattingArgs)
        {
            var group = new DiagnosticsGroup(name, formattingArgs);
            _groups.Add(group.Name, group);

            return group;
        }
        public DiagnosticsGroup AddGroup(string name, params object[] formattingArgs)
        {
            var group = new DiagnosticsGroup(name, formattingArgs);

            _groups.Add(group.Name, group);

            return(group);
        }
        public List<object[]> GetGroupContents(DiagnosticsGroup group)
        {
            var groupContents = new List<object[]> { new object[] { "Contains", "" } };

            foreach (var node in group.Nodes)
                groupContents.Add(new object[] { node.Name, node.Value });

            foreach (var childGroup in group.Groups)
            {
                var childGroupContents = GetGroupContents(childGroup);
                if(childGroupContents.Count > 1)
                    groupContents.Add(new object[] { childGroup.Name, childGroupContents });
            }

            

            return groupContents;
        }