// Specify the "builtin binding types". These are types that are directly accesible without needing an explicit load gesture. // This is the set of bindings we shipped prior to binding extensibility. // Map from BindingType to the Assembly Qualified Type name for its IExtensionConfigProvider object. public ScriptHost(IOptions <JobHostOptions> options, IOptions <LanguageWorkerOptions> languageWorkerOptions, IEnvironment environment, IJobHostContextFactory jobHostContextFactory, IConfiguration configuration, IDistributedLockManager distributedLockManager, IScriptEventManager eventManager, ILoggerFactory loggerFactory, IFunctionMetadataManager functionMetadataManager, IProxyMetadataManager proxyMetadataManager, IMetricsLogger metricsLogger, IOptions <ScriptJobHostOptions> scriptHostOptions, ITypeLocator typeLocator, IScriptJobHostEnvironment scriptHostEnvironment, IDebugStateProvider debugManager, IEnumerable <IScriptBindingProvider> bindingProviders, IPrimaryHostStateProvider primaryHostStateProvider, IJobHostMetadataProvider metadataProvider, IHostIdProvider hostIdProvider, ScriptSettingsManager settingsManager = null) : base(options, jobHostContextFactory) { _environment = environment; _typeLocator = typeLocator as ScriptTypeLocator ?? throw new ArgumentException(nameof(typeLocator), $"A {nameof(ScriptTypeLocator)} instance is required."); _instanceId = Guid.NewGuid().ToString(); _hostOptions = options; _configuration = configuration; _storageConnectionString = configuration.GetWebJobsConnectionString(ConnectionStringNames.Storage); _distributedLockManager = distributedLockManager; _functionMetadataManager = functionMetadataManager; _hostIdProvider = hostIdProvider; _proxyMetadataManager = proxyMetadataManager; _workerConfigs = languageWorkerOptions.Value.WorkerConfigs; ScriptOptions = scriptHostOptions.Value; _scriptHostEnvironment = scriptHostEnvironment; FunctionErrors = new Dictionary <string, ICollection <string> >(StringComparer.OrdinalIgnoreCase); EventManager = eventManager; _settingsManager = settingsManager ?? ScriptSettingsManager.Instance; _metricsLogger = metricsLogger; _hostLogPath = Path.Combine(ScriptOptions.RootLogPath, "Host"); _currentRuntimelanguage = _environment.GetEnvironmentVariable(LanguageWorkerConstants.FunctionWorkerRuntimeSettingName); _loggerFactory = loggerFactory; _logger = loggerFactory.CreateLogger(LogCategories.Startup); Logger = _logger; _debugManager = debugManager; _primaryHostStateProvider = primaryHostStateProvider; _bindingProviders = new List <IScriptBindingProvider>(bindingProviders); _metadataProvider = metadataProvider; }
public WebFunctionsManager(IOptions <ScriptApplicationHostOptions> applicationHostOptions, IOptions <LanguageWorkerOptions> languageWorkerOptions, ILoggerFactory loggerFactory, HttpClient client, IProxyMetadataManager proxyMetadataManager) { _hostOptions = applicationHostOptions.Value.ToHostOptions(); _logger = loggerFactory?.CreateLogger(ScriptConstants.LogCategoryKeysController); _client = client; _workerConfigs = languageWorkerOptions.Value.WorkerConfigs; _proxyMetadataManager = proxyMetadataManager; }
public FunctionInstanceLogCollectorProvider(IFunctionMetadataManager metadataManager, IProxyMetadataManager proxyMetadataManager, IMetricsLogger metrics, IHostIdProvider hostIdProvider, IConfiguration configuration, ILoggerFactory loggerFactory) { _metadataManager = metadataManager ?? throw new ArgumentNullException(nameof(metadataManager)); _proxyMetadataManager = proxyMetadataManager ?? throw new ArgumentNullException(nameof(proxyMetadataManager)); _metrics = metrics ?? throw new ArgumentNullException(nameof(metrics)); _hostIdProvider = hostIdProvider ?? throw new ArgumentNullException(nameof(hostIdProvider)); _configuration = configuration ?? throw new ArgumentNullException(nameof(configuration)); _loggerFactory = loggerFactory ?? throw new ArgumentNullException(nameof(loggerFactory)); }
public FunctionInstanceLogger( IFunctionMetadataManager metadataManager, IProxyMetadataManager proxyMetadataManager, IMetricsLogger metrics, IHostIdProvider hostIdProvider, IConfiguration configuration, ILoggerFactory loggerFactory) : this(metadataManager, proxyMetadataManager, metrics) { if (hostIdProvider == null) { throw new ArgumentNullException(nameof(hostIdProvider)); } if (configuration == null) { throw new ArgumentNullException(nameof(configuration)); } if (loggerFactory == null) { throw new ArgumentNullException(nameof(loggerFactory)); } string accountConnectionString = configuration.GetWebJobsConnectionString(ConnectionStringNames.Dashboard); if (accountConnectionString != null) { CloudStorageAccount account = CloudStorageAccount.Parse(accountConnectionString); var client = account.CreateCloudTableClient(); var tableProvider = LogFactory.NewLogTableProvider(client); ILogger logger = loggerFactory.CreateLogger(ScriptConstants.LogCategoryHostGeneral); string hostId = hostIdProvider.GetHostIdAsync(CancellationToken.None).GetAwaiter().GetResult() ?? "default"; string containerName = Environment.MachineName; _writer = LogFactory.NewWriter(hostId, containerName, tableProvider, (e) => OnException(e, logger)); } }
internal FunctionInstanceLogger(IFunctionMetadataManager metadataManager, IProxyMetadataManager proxyMetadataManager, IMetricsLogger metrics) { _metrics = metrics ?? throw new ArgumentNullException(nameof(metrics)); _proxyMetadataManager = proxyMetadataManager ?? throw new ArgumentNullException(nameof(proxyMetadataManager)); _metadataManager = metadataManager ?? throw new ArgumentNullException(nameof(metadataManager)); }