host.json-Referenz für Azure Functions 2.xhost.json reference for Azure Functions 2.x

Die Metadatendatei host.json enthält globale Konfigurationsoptionen, die sich auf alle Funktionen einer Funktionen-App auswirken.The host.json metadata file contains global configuration options that affect all functions for a function app. In diesem Artikel werden die verfügbaren Einstellungen für die v2 Runtime aufgelistet.This article lists the settings that are available for the v2 runtime.

Hinweis

Dieser Artikel gilt für Azure Functions 2.x.This article is for Azure Functions 2.x. Eine Referenz für „host.json“ in Functions 1.x finden Sie unter host.json-Referenz für Azure Functions 1.x.For a reference of host.json in Functions 1.x, see host.json reference for Azure Functions 1.x.

Weitere Konfigurationsoptionen Ihrer Funktions-App werden in den Anwendungseinstellungen verwaltet.Other function app configuration options are managed in your app settings.

Einige Einstellungen in host.json werden nur bei lokaler Ausführung in der local.settings.json-Datei verwendet.Some host.json settings are only used when running locally in the local.settings.json file.

host.json-BeispieldateiSample host.json file

Für die folgenden host.json-Beispieldateien sind alle möglichen Optionen angegeben.The following sample host.json files have all possible options specified.

{
    "version": "2.0",
    "aggregator": {
        "batchSize": 1000,
        "flushTimeout": "00:00:30"
    },
    "extensions": {
        "cosmosDb": {},
        "durableTask": {},
        "eventHubs": {},
        "http": {},
        "queues": {},
        "sendGrid": {},
        "serviceBus": {}
    },
    "functions": [ "QueueProcessor", "GitHubWebHook" ],
    "functionTimeout": "00:05:00",
    "healthMonitor": {
        "enabled": true,
        "healthCheckInterval": "00:00:10",
        "healthCheckWindow": "00:02:00",
        "healthCheckThreshold": 6,
        "counterThreshold": 0.80
    },
    "logging": {
        "fileLoggingMode": "debugOnly",
        "logLevel": {
          "Function.MyFunction": "Information",
          "default": "None"
        },
        "applicationInsights": {
            "samplingSettings": {
              "isEnabled": true,
              "maxTelemetryItemsPerSecond" : 20
            }
        }
    },
    "managedDependency": {
        "enabled": true
    },
    "singleton": {
      "lockPeriod": "00:00:15",
      "listenerLockPeriod": "00:01:00",
      "listenerLockRecoveryPollingInterval": "00:01:00",
      "lockAcquisitionTimeout": "00:01:00",
      "lockAcquisitionPollingInterval": "00:00:03"
    },
    "watchDirectories": [ "Shared", "Test" ]
}

In den folgenden Abschnitten dieses Artikels werden die einzelnen allgemeinen Eigenschaften erläutert.The following sections of this article explain each top-level property. Alle Eigenschaften sind optional, sofern nicht anders angegeben.All are optional unless otherwise indicated.

aggregatoraggregator

Gibt an, wie viele Funktionsaufrufe aggregiert werden, wenn Metriken für Application Insights berechnet werden.Specifies how many function invocations are aggregated when calculating metrics for Application Insights.

{
    "aggregator": {
        "batchSize": 1000,
        "flushTimeout": "00:00:30"
    }
}
EigenschaftProperty StandardDefault BESCHREIBUNGDescription
batchSizebatchSize 10001000 Maximale Anzahl der zu aggregierenden Anforderungen.Maximum number of requests to aggregate.
flushTimeoutflushTimeout 00:00:3000:00:30 Maximal zu aggregierender Zeitraum.Maximum time period to aggregate.

Funktionsaufrufe werden aggregiert, wenn der erste der beiden Grenzwerte erreicht wird.Function invocations are aggregated when the first of the two limits are reached.

applicationInsightsapplicationInsights

Diese Einstellung ist ein untergeordnetes Element von logging.This setting is a child of logging.

Steuert das Stichprobenfeature in Application Insights.Controls the sampling feature in Application Insights.

{
    "applicationInsights": {
        "samplingSettings": {
          "isEnabled": true,
          "maxTelemetryItemsPerSecond" : 20
        }
    }
}

Hinweis

Protokollsampling kann dazu führen, dass einige Ausführungen möglicherweise nicht auf dem Application Insights-Blatt für Überwachen angezeigt werden.Log sampling may cause some executions to not show up in the Application Insights monitor blade.

EigenschaftProperty StandardDefault BESCHREIBUNGDescription
isEnabledisEnabled truetrue Aktiviert oder deaktiviert die Stichprobenentnahme.Enables or disables sampling.
maxTelemetryItemsPerSecondmaxTelemetryItemsPerSecond 2020 Der Schwellenwert, bei dem die Stichprobenentnahme beginnt.The threshold at which sampling begins.
EnableLiveMetricsEnableLiveMetrics truetrue Aktiviert die Sammlung mit Livemetriken.Enables live metrics collection.
EnableDependencyTrackingEnableDependencyTracking truetrue Aktiviert die Abhängigkeitsüberwachung.Enables dependency tracking.
EnablePerformanceCountersCollectionEnablePerformanceCountersCollection truetrue Aktiviert die Sammlung mit Kudu-Leistungsindikatoren.Enables Kudu performance counters collection.

cosmosDbcosmosDb

Die Konfigurationseinstellung finden Sie in Cosmos DB-Trigger und -Bindungen.Configuration setting can be found in Cosmos DB triggers and bindings.

durableTaskdurableTask

Die Konfigurationseinstellung finden Sie in Bindungen für Durable Functions.Configuration setting can be found in bindings for Durable Functions.

eventHubeventHub

Die Konfigurationseinstellung finden Sie in Event Hub-Trigger und -Bindungen.Configuration settings can be found in Event Hub triggers and bindings.

Erweiterungenextensions

Eigenschaft, die ein Objekt zurückgibt, das alle die bindungsspezifischen-Einstellungen enthält, z.B. http und eventhub.Property that returns an object that contains all of the binding-specific settings, such as http and eventHub.

functionsfunctions

Eine Liste der Funktionen, die vom Auftragshost ausgeführt werden.A list of functions that the job host runs. Ein leeres Array bedeutet, dass alle Funktionen ausgeführt werden.An empty array means run all functions. Nur bei lokaler Ausführung für die Verwendung vorgesehen.Intended for use only when running locally. In Funktions-Apps in Azure sollten Sie anstelle dieser Einstellung die in How to disable functions in Azure Functions (Deaktivieren von Funktionen in Azure Functions) aufgeführten Schritte ausführen, um bestimmte Funktionen zu deaktivieren.In function apps in Azure, you should instead follow the steps in How to disable functions in Azure Functions to disable specific functions rather than using this setting.

{
    "functions": [ "QueueProcessor", "GitHubWebHook" ]
}

functionTimeoutfunctionTimeout

Gibt die Timeoutdauer für alle Funktionen an.Indicates the timeout duration for all functions. Die Angabe erfolgt im TimeSpan-Zeichenfolgenformat.It follows the timespan string format. Bei einem serverlosen Verbrauchsplan liegt der gültige Bereich zwischen 1 Sekunde und 10 Minuten, wobei der Standardwert bei 5 Minuten liegt.In a serverless Consumption plan, the valid range is from 1 second to 10 minutes, and the default value is 5 minutes.
Bei einem dedizierten App Service-Plan gibt es keine allgemeine Beschränkung, und der Standardwert beträgt 30 Minuten.In a Dedicated (App Service) plan, there is no overall limit, and the default value is 30 minutes. Der Wert -1 gibt eine unbegrenzte Ausführung an.A value of -1 indicates unbounded execution.

{
    "functionTimeout": "00:05:00"
}

healthMonitorhealthMonitor

Konfigurationseinstellungen für Host Health Monitor (Überwachung der Hostintegrität).Configuration settings for Host health monitor.

{
    "healthMonitor": {
        "enabled": true,
        "healthCheckInterval": "00:00:10",
        "healthCheckWindow": "00:02:00",
        "healthCheckThreshold": 6,
        "counterThreshold": 0.80
    }
}
EigenschaftProperty StandardDefault BESCHREIBUNGDescription
enabledenabled truetrue Gibt an, ob die Funktion aktiviert ist.Specifies whether the feature is enabled.
healthCheckIntervalhealthCheckInterval 10 Sekunden10 seconds Das Zeitintervall zwischen den regelmäßigen Integritätsüberprüfungen im Hintergrund.The time interval between the periodic background health checks.
healthCheckWindowhealthCheckWindow 2 Minuten2 minutes Ein variables Zeitfenster, das in Zusammenhang mit der healthCheckThreshold-Einstellung verwendet wird.A sliding time window used in conjunction with the healthCheckThreshold setting.
healthCheckThresholdhealthCheckThreshold 66 Maximale Anzahl von fehlerhaften Integritätsüberprüfungen, bevor ein Neustart des Hosts initiiert wird.Maximum number of times the health check can fail before a host recycle is initiated.
counterThresholdcounterThreshold 0.800.80 Der Schwellenwert, an dem ein Leistungsindikator als fehlerhaft betrachtet wird.The threshold at which a performance counter will be considered unhealthy.

httphttp

Die Konfigurationseinstellung finden Sie in HTTP-Trigger und -Bindungen.Configuration settings can be found in http triggers and bindings.

logginglogging

Steuert das Protokollierungsverhalten der Funktions-App, einschließlich Application Insights.Controls the logging behaviors of the function app, including Application Insights.

"logging": {
    "fileLoggingMode": "debugOnly"
    "logLevel": {
      "Function.MyFunction": "Information",
      "default": "None"
    },
    "console": {
        ...
    },
    "applicationInsights": {
        ...
    }
}
EigenschaftProperty StandardDefault BESCHREIBUNGDescription
fileLoggingModefileLoggingMode debugOnlydebugOnly Definiert, welche Stufe der Dateiprotokollierung aktiviert ist.Defines what level of file logging is enabled. Optionen sind never, always, debugOnly.Options are never, always, debugOnly.
logLevellogLevel n/a Objekt, das das Filtern der Protokollkategorie nach Funktionen in der App definiert.Object that defines the log category filtering for functions in the app. Version 2.x entspricht bei der Filterung der Protokollkategorie dem Layout von ASP.NET Core.Version 2.x follows the ASP.NET Core layout for log category filtering. Dadurch können Sie die Protokollierung nach bestimmten Funktionen filtern.This lets you filter logging for specific functions. Weitere Informationen finden Sie unter Protokollfilterung in der Dokumentation zu ASP.NET Core.For more information, see Log filtering in the ASP.NET Core documentation.
consoleconsole n/a Die Konsolenprotokollierungseinstellung.The console logging setting.
applicationInsightsapplicationInsights n/a Die applicationInsights-Einstellung.The applicationInsights setting.

consoleconsole

Diese Einstellung ist ein untergeordnetes Element von logging.This setting is a child of logging. Sie steuert die Konsolenprotokollierung, wenn nicht im Debugmodus.It controls the console logging when not in debugging mode.

{
    "logging": {
    ...
        "console": {
          "isEnabled": "false"
        },
    ...
    }
}
EigenschaftProperty StandardDefault BESCHREIBUNGDescription
isEnabledisEnabled falsefalse Aktiviert oder deaktiviert die Konsolenprotokollierung.Enables or disables console logging.

managedDependencymanagedDependency

Verwaltete Abhängigkeit ist ein Vorschaufeature, das derzeit nur mit PowerShell-basierten Funktionen unterstützt wird.Managed dependency is a feature that is currently only supported with PowerShell based functions. Sie ermöglicht, dass Abhängigkeiten automatisch vom Dienst verwaltet werden können.It enables dependencies to be automatically managed by the service. Wenn die enabled-Eigenschaft auf true festgelegt ist, wird die Datei requirements.psd1 verarbeitet.When the enabled property is set to true, the requirements.psd1 file is processed. Abhängigkeiten werden aktualisiert, wenn Nebenversionen veröffentlicht werden.Dependencies are updated when any minor versions are released. Weitere Informationen finden Sie unter Verwaltete Abhängigkeit im PowerShell-Artikel.For more information, see Managed dependency in the PowerShell article.

{
    "managedDependency": {
        "enabled": true
    }
}

queuesqueues

Die Konfigurationseinstellungen finden Sie in Trigger und Bindungen der Speicherwarteschlange.Configuration settings can be found in Storage queue triggers and bindings.

sendGridsendGrid

Die Konfigurationseinstellung finden Sie in SendGrid-Trigger und -Bindungen.Configuration setting can be found in SendGrid triggers and bindings.

serviceBusserviceBus

Die Konfigurationseinstellung finden Sie in Service Bus-Trigger und -Bindungen.Configuration setting can be found in Service Bus triggers and bindings.

singletonsingleton

Konfigurationseinstellungen für das Singleton-Sperrverhalten.Configuration settings for Singleton lock behavior. Weitere Informationen finden Sie unter GitHub-Problem zur Singleton-Unterstützung.For more information, see GitHub issue about singleton support.

{
    "singleton": {
      "lockPeriod": "00:00:15",
      "listenerLockPeriod": "00:01:00",
      "listenerLockRecoveryPollingInterval": "00:01:00",
      "lockAcquisitionTimeout": "00:01:00",
      "lockAcquisitionPollingInterval": "00:00:03"
    }
}
EigenschaftProperty StandardDefault BESCHREIBUNGDescription
lockPeriodlockPeriod 00:00:1500:00:15 Der Zeitraum, für den Sperren auf Funktionsebene gelten.The period that function level locks are taken for. Die Sperren werden automatisch verlängert.The locks auto-renew.
listenerLockPeriodlistenerLockPeriod 00:01:0000:01:00 Der Zeitraum, für den Listenersperren gelten.The period that listener locks are taken for.
listenerLockRecoveryPollingIntervallistenerLockRecoveryPollingInterval 00:01:0000:01:00 Das Zeitintervall für die Wiederherstellung der Listenersperre, wenn eine Listenersperre nicht beim Start abgerufen werden konnte.The time interval used for listener lock recovery if a listener lock couldn't be acquired on startup.
lockAcquisitionTimeoutlockAcquisitionTimeout 00:01:0000:01:00 Die maximale Zeitspanne, in der die Laufzeit versucht, eine Sperre abzurufen.The maximum amount of time the runtime will try to acquire a lock.
lockAcquisitionPollingIntervallockAcquisitionPollingInterval n/a Das Intervall zwischen den Versuchen, eine Sperre abzurufen.The interval between lock acquisition attempts.

versionversion

Die Versionszeichenfolge "version": "2.0" ist für Funktions-App mit der v2-Runtime als Ziel erforderlich.The version string "version": "2.0" is required for a function app that targets the v2 runtime.

watchDirectorieswatchDirectories

Eine Reihe von Verzeichnissen mit freigegebenem Code, die auf Änderungen überwacht werden sollte.A set of shared code directories that should be monitored for changes. Dadurch wird sichergestellt, dass Änderungen am Code in diesen Verzeichnissen von Ihren Funktionen übernommen werden.Ensures that when code in these directories is changed, the changes are picked up by your functions.

{
    "watchDirectories": [ "Shared" ]
}

Nächste SchritteNext steps