static void Main(string[] args)
        {
            var serviceControlDataUrl = ConfigurationManager.AppSettings["ServiceControl/RavenAddress"];
            var store = GetDocumentStore(serviceControlDataUrl);

            var modelBuilder = new ModelBuilder(GetNodeStrategy());

            var dataSource = new AllProcessedMessagesRoutedMessageSource(store);

            dataSource.RegisterListener(modelBuilder.Accept);
            var model = modelBuilder.GetModel();

            Console.WriteLine("Model generated");

            var dgml           = DgmlRouteDocFactory.CreateDgml(model);
            var outputFileName = args.FirstOrDefault() ?? "route-graph";

            if (!outputFileName.EndsWith(".dgml", StringComparison.CurrentCultureIgnoreCase))
            {
                outputFileName += ".dgml";
            }

            dgml.Save(outputFileName);

            Console.WriteLine($"Created {outputFileName}");
        }
        static void Main(string[] args)
        {
            var serviceControlDataUrl = ConfigurationManager.AppSettings["ServiceControl/RavenAddress"];
            var store = GetDocumentStore(serviceControlDataUrl);

            var modelBuilder = new ModelBuilder(GetNodeStrategy());

            var dataSource = new AllProcessedMessagesRoutedMessageSource(store);

            dataSource.RegisterListener(modelBuilder.Accept);
            var model = modelBuilder.GetModel();
            Console.WriteLine("Model generated");

            var dgml = DgmlRouteDocFactory.CreateDgml(model);
            var outputFileName = args.FirstOrDefault() ?? "route-graph";
            if (!outputFileName.EndsWith(".dgml", StringComparison.CurrentCultureIgnoreCase))
            {
                outputFileName += ".dgml";
            }

            dgml.Save(outputFileName);

            Console.WriteLine($"Created {outputFileName}");
        }