Esempio n. 1
0
        public async Task MinimumAzureFunctionsDatabricksProject_WithEmbeddedTimer_ReportsAsMetricPeriodically()
        {
            ApplicationInsightsConfig applicationInsightsConfig = _config.GetApplicationInsightsConfig();
            var parameters = RunParameters.CreateNotebookParams(Enumerable.Empty <KeyValuePair <string, string> >());

            using (var project = AzureFunctionsDatabricksProject.StartNew(_config, _outputWriter))
            {
                using (var client = DatabricksClient.CreateClient(project.DatabricksConfig.BaseUrl, project.DatabricksConfig.SecurityToken))
                {
                    // Act
                    await client.Jobs.RunNow(project.DatabricksConfig.JobId, parameters);
                    await WaitUntilDatabricksJobRunIsCompleted(client, project.DatabricksConfig.JobId);
                }
            }

            // Assert
            using (ApplicationInsightsDataClient client = CreateApplicationInsightsClient(applicationInsightsConfig.ApiKey))
            {
                await RetryAssertUntilTelemetryShouldBeAvailableAsync(async() =>
                {
                    const string past10MinFilter = "PT0.1H";
                    var bodySchema = new MetricsPostBodySchema(
                        id: Guid.NewGuid().ToString(),
                        parameters: new MetricsPostBodySchemaParameters($"customMetrics/{applicationInsightsConfig.MetricName}", timespan: past10MinFilter));

                    IList <MetricsResultsItem> results =
                        await client.Metrics.GetMultipleAsync(applicationInsightsConfig.ApplicationId, new List <MetricsPostBodySchema> {
                        bodySchema
                    });

                    Assert.NotEmpty(results);
                    Assert.All(results, result => Assert.NotNull(result.Body.Value));
                }, timeout : TimeSpan.FromMinutes(2));
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 public Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _sb  = new ServiceBusConfig(configuration);
     _hub = new IoTHubConfig(configuration);
     _ai  = new ApplicationInsightsConfig(configuration);
 }
Esempio n. 3
0
        // TODO - set false

        /// <summary>
        /// Configuration constructor
        /// </summary>
        /// <param name="configuration"></param>
        public Config(IConfigurationRoot configuration) :
            base(configuration)
        {
            _tasks   = new TaskProcessorConfig(configuration);
            _db      = new CosmosDbConfig(configuration);
            _storage = new StorageConfig(configuration);
            _hub     = new IoTHubConfig(configuration);
            _ai      = new ApplicationInsightsConfig(configuration);
        }
Esempio n. 4
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 public Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _swagger = new SwaggerConfig(configuration);
     _auth    = new AuthConfig(configuration);
     _hub     = new IoTHubConfig(configuration);
     _cors    = new CorsConfig(configuration);
     _eh      = new EventHubConfig(configuration);
     _ai      = new ApplicationInsightsConfig(configuration);
 }
Esempio n. 5
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 public Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _tasks = new TaskProcessorConfig(configuration);
     _ep    = new EventProcessorConfig(configuration);
     _eh    = new IoTHubEventConfig(configuration);
     _hub   = new IoTHubConfig(configuration);
     _sb    = new ServiceBusConfig(configuration);
     _ai    = new ApplicationInsightsConfig(configuration);
 }
Esempio n. 6
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 public Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _swagger = new SwaggerConfig(configuration);
     _auth    = new AuthConfig(configuration);
     _hub     = new IoTHubConfig(configuration);
     _cors    = new CorsConfig(configuration);
     _sb      = new ServiceBusConfig(configuration);
     _cosmos  = new CosmosDbConfig(configuration);
     _ai      = new ApplicationInsightsConfig(configuration);
 }
Esempio n. 7
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 public Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _auth     = new AuthConfig(configuration);
     _hub      = new IoTHubConfig(configuration);
     _cors     = new CorsConfig(configuration);
     _eh       = new EventHubConfig(configuration);
     _sessions = new SessionServicesConfig(configuration);
     _api      = new ApiConfig(configuration);
     _ai       = new ApplicationInsightsConfig(configuration);
 }
Esempio n. 8
0
        private static void ConfigureMyApplicationInsights()
        {
            var configsettings = new ApplicationInsightsConfig();

            configsettings.ApplicationName    = "DemoApp1";
            configsettings.Enabled            = bool.Parse(ConfigurationManager.AppSettings["Enabled"]);
            configsettings.LoggingLevel       = (LogLevel)Enum.Parse(typeof(LogLevel), ConfigurationManager.AppSettings["LogLevel"]);
            configsettings.InstrumentationKey = ConfigurationManager.AppSettings["InstrumentationKey"];
            configsettings.Environment        = ConfigurationManager.AppSettings["Environment"];

            ConfigureApplicationInsights.Config(configsettings);
        }
Esempio n. 9
0
 /// <summary>
 /// Configuration constructor
 /// </summary>
 /// <param name="configuration"></param>
 internal Config(IConfigurationRoot configuration) :
     base(configuration)
 {
     _vault    = new VaultConfig(configuration);
     _keyVault = new KeyVaultConfig(configuration);
     _cosmos   = new CosmosDbConfig(configuration);
     _swagger  = new SwaggerConfig(configuration);
     _auth     = new AuthConfig(configuration);
     _cors     = new CorsConfig(configuration);
     _sb       = new ServiceBusConfig(configuration);
     _hub      = new IoTHubConfig(configuration);
     _registry = new ApiConfig(configuration);
     _ai       = new ApplicationInsightsConfig(configuration);
 }
        /// <summary>
        /// Adds the basic required Application Insights pieces for running an Asp.Net site.
        /// </summary>
        /// <param name="services">The IServiceCollection.</param>
        /// <param name="config">The Application Insights Configuration.</param>
        /// <returns>The updated IServiceCollection.</returns>
        public static IServiceCollection AddApplicationInsights(IServiceCollection services, ApplicationInsightsConfig config)
        {
            services.Configure <ApplicationInsightsConfig>(o =>
            {
                o.HostName         = config.HostName;
                o.CloudRoleName    = config.CloudRoleName;
                o.IgnoredEndpoints = config.IgnoredEndpoints;
            });
            services.AddApplicationInsightsTelemetry();
            services.AddApplicationInsightsTelemetryProcessor <HealthCheckTelemetryProcessor>();

            return(services);
        }
 public ConfigController(IOptions <ApplicationInsightsConfig> applicationInsightsConfig)
 {
     this._applicationInsightsConfig = applicationInsightsConfig.Value;
 }