コード例 #1
0
ファイル: Program.cs プロジェクト: dmitriyq/dnsanalyzer
        public static void Main(string[] args)
        {
            EnvironmentExtensions.CheckVariables(
                EnvVars.PG_CONNECTION_STRING_READ,
                EnvVars.PG_CONNECTION_STRING_WRITE,
                EnvVars.REDIS_CONNECTION,
                EnvVars.ANALYZER_SUSPECT_IP_COUNT,
                EnvVars.NOTIFICATION_EMAIL_FROM
                );

            var serviceCollection = new ServiceCollection();

            ConfigureServices(serviceCollection);
            var services = serviceCollection.BuildServiceProvider();

            ApplyMigrations(services);

            var bootstrapper = services.GetService <Bootstrapper>();

            Task.Run(async() =>
            {
                await bootstrapper.StartAnalyzer();
            });

            resetEventSlim.Wait();
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: dmitriyq/dnsanalyzer
        public static void Main(string[] args)
        {
            EnvironmentExtensions.CheckVariables(
                EnvVars.AUTH_SERVER_URL,
                EnvVars.NOTIFY_SERVICE_URL,
                EnvVars.VIGRUZKI_SERVICE_URL,
                EnvVars.REDIS_CONNECTION,
                EnvVars.PG_CONNECTION_STRING_READ,
                EnvVars.NOTIFICATION_EMAIL_FROM,
                EnvVars.PG_CONNECTION_STRING_WRITE);

            CreateHostBuilder(args).Build().Run();
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: dmitriyq/dnsanalyzer
        public static void Main(string[] args)
        {
            EnvironmentExtensions.CheckVariables(
                EnvVars.HYPERLOCAL_SERVER,
                EnvVars.PG_CONNECTION_STRING_READ,
                EnvVars.PG_CONNECTION_STRING_WRITE,
                EnvVars.REDIS_CONNECTION,
                EnvVars.RESOLVER_BUFFER_BLOCK_SIZE,
                EnvVars.RESOLVER_MAX_DEGREE_OF_PARALLELISM
                );

            ServicePointManager.ServerCertificateValidationCallback += (sender, cert, chain, sslPolicyErrors) => true;
            ServicePointManager.DefaultConnectionLimit = int.MaxValue;

            var serviceCollection = new ServiceCollection();

            ConfigureServices(serviceCollection);
            var services = serviceCollection.BuildServiceProvider();

            ApplyMigrations(services);

            var bootstrapper = services.GetService <Bootstrapper>();
            var logger       = services.GetService <ILoggerFactory>().CreateLogger <Program>();

            Task.Run(async() =>
            {
                try
                {
                    while (true)
                    {
                        await bootstrapper.ResolveDomains();
                        await bootstrapper.NotifyCompletion();
                    }
                }
                catch (Exception ex)
                {
                    logger.LogError(ex, ex.Message);
                    throw;
                }
            });
            resetEventSlim.Wait();
        }