host.json-Referenz für Azure Functions 2.x oder höherhost.json reference for Azure Functions 2.x and later

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 Einstellungen aufgelistet, die ab Version 2.x der Azure Functions-Laufzeit verfügbar sind.This article lists the settings that are available starting with version 2.x of the Azure Functions runtime.

Hinweis

Dieser Artikel gilt für Azure Functions 2.x oder höher.This article is for Azure Functions 2.x and later versions. 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.

Andere Konfigurationsoptionen für Funktions-Apps werden in den App-Einstellungen (für bereitgestellte Apps) oder in der Datei local.settings.json (für die lokale Entwicklung) verwaltet.Other function app configuration options are managed in your app settings (for deployed apps) or your local.settings.json file (for local development).

Konfigurationen in „host.json“, die mit Bindungen im Zusammenhang stehen, werden gleichmäßig auf alle Funktionen in der Funktions-App angewendet.Configurations in host.json related to bindings are applied equally to each function in the function app.

Mithilfe der Anwendungseinstellungen können Sie auch Einstellungen pro Umgebung außer Kraft setzen oder anwenden.You can also override or apply settings per environment using application settings.

host.json-BeispieldateiSample host.json file

In der folgenden Beispieldatei host.json für Version 2.x und höher sind alle möglichen Optionen angegeben (mit Ausnahme der Optionen, die nur für die interne Verwendung vorgesehen sind).The following sample host.json file for version 2.x+ has all possible options specified (excluding any that are for internal use only).

{
    "version": "2.0",
    "aggregator": {
        "batchSize": 1000,
        "flushTimeout": "00:00:30"
    },
    "extensions": {
        "cosmosDb": {},
        "durableTask": {},
        "eventHubs": {},
        "http": {},
        "queues": {},
        "sendGrid": {},
        "serviceBus": {}
    },
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[1.*, 2.0.0)"
    },
    "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,
              "evaluationInterval": "01:00:00",
              "initialSamplingPercentage": 100.0, 
              "samplingPercentageIncreaseTimeout" : "00:00:01",
              "samplingPercentageDecreaseTimeout" : "00:00:01",
              "minSamplingPercentage": 0.1,
              "maxSamplingPercentage": 100.0,
              "movingAverageRatio": 1.0,
              "excludedTypes" : "Dependency;Event",
              "includedTypes" : "PageView;Trace"
            },
            "enableLiveMetrics": true,
            "enableDependencyTracking": true,
            "enablePerformanceCountersCollection": true,            
            "httpAutoCollectionOptions": {
                "enableHttpTriggerExtendedInfoCollection": true,
                "enableW3CDistributedTracing": true,
                "enableResponseHeaderInjection": true
            },
            "snapshotConfiguration": {
                "agentEndpoint": null,
                "captureSnapshotMemoryWeight": 0.5,
                "failedRequestLimit": 3,
                "handleUntrackedExceptions": true,
                "isEnabled": true,
                "isEnabledInDeveloperMode": false,
                "isEnabledWhenProfiling": true,
                "isExceptionSnappointsEnabled": false,
                "isLowPrioritySnapshotUploader": true,
                "maximumCollectionPlanSize": 50,
                "maximumSnapshotsRequired": 3,
                "problemCounterResetInterval": "24:00:00",
                "provideAnonymousTelemetry": true,
                "reconnectInterval": "00:15:00",
                "shadowCopyFolder": null,
                "shareUploaderProcess": true,
                "snapshotInLowPriorityThread": true,
                "snapshotsPerDayLimit": 30,
                "snapshotsPerTenMinutesLimit": 1,
                "tempFolder": null,
                "thresholdForSnapshotting": 1,
                "uploaderProxy": null
            }
        }
    },
    "managedDependency": {
        "enabled": true
    },
    "retry": {
      "strategy": "fixedDelay",
      "maxRetryCount": 5,
      "delayInterval": "00:00:05"
    },
    "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.

Sie steuert Optionen für Application Insights, einschließlich Stichprobenoptionen.Controls options for Application Insights, including sampling options.

Die vollständige JSON-Struktur finden Sie in der obigen Beispieldatei „host.json“.For the complete JSON structure, see the earlier example host.json file.

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. Fügen Sie excludedTypes: "Request" zum Wert samplingSettings hinzu, um die Protokollstichprobenentnahme zu vermeiden.To avoid log sampling, add excludedTypes: "Request" to the samplingSettings value.

EigenschaftProperty StandardDefault BESCHREIBUNGDescription
samplingSettingssamplingSettings n/a Siehe applicationInsights.samplingSettings.See applicationInsights.samplingSettings.
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.
liveMetricsInitializationDelayliveMetricsInitializationDelay 00:00:1500:00:15 Nur zur internen Verwendung.For internal use only.
httpAutoCollectionOptionshttpAutoCollectionOptions n/a Siehe applicationInsights.httpAutoCollectionOptions.See applicationInsights.httpAutoCollectionOptions.
snapshotConfigurationsnapshotConfiguration n/a Siehe applicationInsights.snapshotConfiguration.See applicationInsights.snapshotConfiguration.

applicationInsights.samplingSettingsapplicationInsights.samplingSettings

EigenschaftProperty StandardDefault BESCHREIBUNGDescription
isEnabledisEnabled truetrue Aktiviert oder deaktiviert die Stichprobenentnahme.Enables or disables sampling.
maxTelemetryItemsPerSecondmaxTelemetryItemsPerSecond 2020 Die Zielanzahl der Telemetrieelemente, die pro Sekunde auf den einzelnen Serverhosts protokolliert werden.The target number of telemetry items logged per second on each server host. Reduzieren Sie diesen Wert, wenn Ihre App auf vielen Hosts ausgeführt wird, um Ihre Zielgeschwindigkeit für den gesamten Datenverkehr einzuhalten.If your app runs on many hosts, reduce this value to remain within your overall target rate of traffic.
evaluationIntervalevaluationInterval 01:00:0001:00:00 Das Intervall, in dem die aktuelle Telemetrierate erneut ausgewertet wird.The interval at which the current rate of telemetry is reevaluated. Die Auswertung wird als gleitender Durchschnitt ausgeführt.Evaluation is performed as a moving average. Wenn bei Ihrer Telemetrie plötzliche Spitzen auftreten, sollten Sie dieses Intervall verkürzen.You might want to shorten this interval if your telemetry is liable to sudden bursts.
initialSamplingPercentageinitialSamplingPercentage 100.0100.0 Der anfängliche Prozentsatz für die Stichprobenentnahme, der zu Beginn der Stichprobenentnahme angewendet wird, um den Prozentsatz dynamisch zu variieren.The initial sampling percentage applied at the start of the sampling process to dynamically vary the percentage. Reduzieren Sie den Wert nicht, solange Sie debuggen.Don't reduce value while you're debugging.
samplingPercentageIncreaseTimeoutsamplingPercentageIncreaseTimeout 00:00:0100:00:01 Wenn der Prozentwert für die Stichprobenentnahme geändert wird, bestimmt diese Eigenschaft, wie schnell Application Insights den Prozentsatz für die Stichprobenentnahme danach erhöhen darf, um mehr Daten zu erfassen.When the sampling percentage value changes, this property determines how soon afterwards Application Insights is allowed to raise sampling percentage again to capture more data.
samplingPercentageDecreaseTimeoutsamplingPercentageDecreaseTimeout 00:00:0100:00:01 Wenn der Prozentwert für die Stichprobenentnahme geändert wird, bestimmt diese Eigenschaft, wie schnell Application Insights den Prozentsatz für die Stichprobenentnahme danach reduzieren darf, um weniger Daten zu erfassen.When the sampling percentage value changes, this property determines how soon afterwards Application Insights is allowed to lower sampling percentage again to capture less data.
minSamplingPercentageminSamplingPercentage 0,10.1 Diese Eigenschaft bestimmt den mindestens zulässigen Wert für den variierenden Prozentsatz der Stichprobenentnahme.As sampling percentage varies, this property determines the minimum allowed sampling percentage.
maxSamplingPercentagemaxSamplingPercentage 100.0100.0 Diese Eigenschaft bestimmt den maximal zulässigen Wert für den variierenden Prozentsatz der Stichprobenentnahme.As sampling percentage varies, this property determines the maximum allowed sampling percentage.
movingAverageRatiomovingAverageRatio 1.01.0 Die Gewichtung, die bei der Berechnung des gleitenden Durchschnitts dem jüngsten Wert beigemessen wird.In the calculation of the moving average, the weight assigned to the most recent value. Verwenden Sie einen Wert kleiner oder gleich 1.Use a value equal to or less than 1. Bei einem kleineren Wert reagiert der Algorithmus langsamer auf plötzliche Veränderungen.Smaller values make the algorithm less reactive to sudden changes.
excludedTypesexcludedTypes NULLnull Eine durch Semikolons getrennte Liste von Typen, für die keine Stichproben erstellt werden sollen.A semi-colon delimited list of types that you don't want to be sampled. Anerkannte Typen sind Dependency, Event, Exception, PageView, Request und Trace.Recognized types are: Dependency, Event, Exception, PageView, Request, and Trace. Alle Instanzen der angegebenen Typen werden übertragen. Für nicht angegebene Typen werden Stichproben erstellt.All instances of the specified types are transmitted; the types that aren't specified are sampled.
includedTypesincludedTypes NULLnull Eine durch Semikolons getrennte Liste von Typen, für die Stichproben erstellt werden sollen. Eine leere Liste gibt an, dass Stichproben für alle Typen erstellt werden sollen.A semi-colon delimited list of types that you want to be sampled; an empty list implies all types. In excludedTypes aufgeführte Typen überschreiben die hier aufgeführten Typen.Type listed in excludedTypes override types listed here. Anerkannte Typen sind Dependency, Event, Exception, PageView, Request und Trace.Recognized types are: Dependency, Event, Exception, PageView, Request, and Trace. Für alle Instanzen der angegebenen Typen werden Stichproben erstellt. Die nicht angegebenen und nicht implizierten Typen werden ohne Stichprobenentnahme übertragen.Instances of the specified types are sampled; the types that aren't specified or implied are transmitted without sampling.

applicationInsights.httpAutoCollectionOptionsapplicationInsights.httpAutoCollectionOptions

EigenschaftProperty StandardDefault BESCHREIBUNGDescription
enableHttpTriggerExtendedInfoCollectionenableHttpTriggerExtendedInfoCollection truetrue Diese Eigenschaft aktiviert oder deaktiviert erweiterte HTTP-Anforderungsinformationen für HTTP-Trigger: eingehende Anforderungskorrelationsheader, Unterstützung für mehrere Instrumentierungsschlüssel, HTTP-Methoden, Pfade und Antworten.Enables or disables extended HTTP request information for HTTP triggers: incoming request correlation headers, multi-instrumentation keys support, HTTP method, path, and response.
enableW3CDistributedTracingenableW3CDistributedTracing truetrue Diese Eigenschaft aktiviert oder deaktiviert die Unterstützung des W3C-Protokolls für die verteilte Ablaufverfolgung (und aktiviert das alte Korrelationsschema).Enables or disables support of W3C distributed tracing protocol (and turns on legacy correlation schema). Sie ist standardmäßig aktiviert, wenn enableHttpTriggerExtendedInfoCollection den Wert TRUE aufweist.Enabled by default if enableHttpTriggerExtendedInfoCollection is true. Wenn enableHttpTriggerExtendedInfoCollection den Wert FALSE aufweist, gilt dieses Flag nur für ausgehende Anforderungen, nicht für eingehende Anforderungen.If enableHttpTriggerExtendedInfoCollection is false, this flag applies to outgoing requests only, not incoming requests.
enableResponseHeaderInjectionenableResponseHeaderInjection truetrue Diese Eigenschaft aktiviert oder deaktiviert die Injektion von Korrelationsheadern mit mehreren Komponenten in Antworten.Enables or disables injection of multi-component correlation headers into responses. Wenn die Injektion aktiviert wird, kann Application Insights eine Anwendungszuordnung erstellen, wenn mehrere Instrumentierungsschlüssel verwendet werden.Enabling injection allows Application Insights to construct an Application Map to when several instrumentation keys are used. Sie ist standardmäßig aktiviert, wenn enableHttpTriggerExtendedInfoCollection den Wert TRUE aufweist.Enabled by default if enableHttpTriggerExtendedInfoCollection is true. Diese Einstellung ist nicht gültig, wenn enableHttpTriggerExtendedInfoCollection den Wert FALSE aufweist.This setting doesn't apply if enableHttpTriggerExtendedInfoCollection is false.

applicationInsights.snapshotConfigurationapplicationInsights.snapshotConfiguration

Weitere Informationen zu Momentaufnahmen finden Sie unter Debugmomentaufnahmen von Ausnahmen in .NET-Apps und Behandeln von Problemen beim Aktivieren des Application Insights-Momentaufnahmedebuggers oder Anzeigen von Momentaufnahmen.For more information on snapshots, see Debug snapshots on exceptions in .NET apps and Troubleshoot problems enabling Application Insights Snapshot Debugger or viewing snapshots.

EigenschaftProperty StandardDefault BESCHREIBUNGDescription
agentEndpointagentEndpoint NULLnull Der Endpunkt wird zum Herstellen einer Verbindung mit dem Application Insights-Momentaufnahmedebuggerdienst verwendet.The endpoint used to connect to the Application Insights Snapshot Debugger service. Wenn der Wert NULL vorliegt, wird ein Standardendpunkt verwendet.If null, a default endpoint is used.
captureSnapshotMemoryWeightcaptureSnapshotMemoryWeight 0.50.5 Die Gewichtung der Größe des aktuellen Prozessarbeitsspeichers für die Überprüfung, ob ausreichend Arbeitsspeicher zum Erstellen einer Momentaufnahme verfügbar ist.The weight given to the current process memory size when checking if there's enough memory to take a snapshot. Es wird ein Wert erwartet, der größer als 0 (null) und ein echter Bruch ist (0 < CaptureSnapshotMemoryWeight < 1).The expected value is a greater than 0 proper fraction (0 < CaptureSnapshotMemoryWeight < 1).
failedRequestLimitfailedRequestLimit 33 Der Schwellenwert für die Anzahl fehlgeschlagener Anforderungen von Momentaufnahmen, ab der der Telemetrieprozessor deaktiviert wird.The limit on the number of failed requests to request snapshots before the telemetry processor is disabled.
handleUntrackedExceptionshandleUntrackedExceptions truetrue Diese Eigenschaft aktiviert oder deaktiviert die Nachverfolgung von Ausnahmen, die nicht von der Application Insights-Telemetrie nachverfolgt werden.Enables or disables tracking of exceptions that aren't tracked by Application Insights telemetry.
isEnabledisEnabled truetrue Diese Eigenschaft aktiviert oder deaktiviert die Erfassung von Momentaufnahmen.Enables or disables snapshot collection
isEnabledInDeveloperModeisEnabledInDeveloperMode falsefalse Diese Eigenschaft aktiviert oder deaktiviert die Erfassung von Momentaufnahmen im Entwicklermodus.Enables or disables snapshot collection is enabled in developer mode.
isEnabledWhenProfilingisEnabledWhenProfiling truetrue Diese Eigenschaft aktiviert oder deaktiviert die Erstellung von Momentaufnahmen, selbst wenn eine ausführliche Profilerstellungssitzung von Application Insights Profiler erfasst wird.Enables or disables snapshot creation even if the Application Insights Profiler is collecting a detailed profiling session.
isExceptionSnappointsEnabledisExceptionSnappointsEnabled falsefalse Diese Eigenschaft aktiviert oder deaktiviert die Filterung von Ausnahmen.Enables or disables filtering of exceptions.
isLowPrioritySnapshotUploaderisLowPrioritySnapshotUploader truetrue Diese Eigenschaft bestimmt, ob der SnapshotUploader-Prozess mit einer niedrigeren Priorität als normal ausgeführt werden soll.Determines whether to run the SnapshotUploader process at below normal priority.
maximumCollectionPlanSizemaximumCollectionPlanSize 5050 Diese Eigenschaft gibt die maximale Anzahl von Problemen von 1 bis 9.999 an, die gleichzeitig nachverfolgt werden können.The maximum number of problems that we can track at any time in a range from one to 9999.
maximumSnapshotsRequiredmaximumSnapshotsRequired 33 Diese Eigenschaft gibt die maximale Anzahl erfasster Momentaufnahmen für ein einzelnes Problem von 1 bis 999 an.The maximum number of snapshots collected for a single problem, in a range from one to 999. Sie können ein Problem als individuelle throw-Anweisung in Ihrer Anwendung betrachten.A problem may be thought of as an individual throw statement in your application. Sobald die Anzahl der erfassten Momentaufnahmen für ein Problem diesen Wert erreicht, werden keine weiteren Momentaufnahmen für das Problem erfasst, bis der Problemzähler zurückgesetzt (siehe problemCounterResetInterval) und der thresholdForSnapshotting-Schwellenwert erneut erreicht wird.Once the number of snapshots collected for a problem reaches this value, no more snapshots will be collected for that problem until problem counters are reset (see problemCounterResetInterval) and the thresholdForSnapshotting limit is reached again.
problemCounterResetIntervalproblemCounterResetInterval 24:00:0024:00:00 Diese Eigenschaft gibt an, wie oft die Problemzähler in einem Zeitraum von 1 Minute bis 7 Tage zurückgesetzt werden.How often to reset the problem counters in a range from one minute to seven days. Sobald dieses Intervall erreicht wird, werden alle Problemzähler auf 0 (null) gesetzt.When this interval is reached, all problem counts are reset to zero. Vorhandene Probleme, die den Schwellenwert für die Momentaufnahmenerstellung bereits erreicht haben, aber noch nicht die Anzahl der Momentaufnahmen in maximumSnapshotsRequired generiert haben, sind weiterhin aktiv.Existing problems that have already reached the threshold for doing snapshots, but haven't yet generated the number of snapshots in maximumSnapshotsRequired, remain active.
provideAnonymousTelemetryprovideAnonymousTelemetry truetrue Diese Eigenschaft bestimmt, ob anonyme Nutzungs- und Fehlertelemetriedaten an Microsoft gesendet werden.Determines whether to send anonymous usage and error telemetry to Microsoft. Diese Telemetrie kann verwendet werden, wenn Sie Microsoft für die Behandlung von Problemen mit dem Momentaufnahmedebugger kontaktieren.This telemetry may be used if you contact Microsoft to help troubleshoot problems with the Snapshot Debugger. Diese Daten werden auch für die Überwachung von Nutzungsmustern verwendet.It is also used to monitor usage patterns.
reconnectIntervalreconnectInterval 00:15:0000:15:00 Diese Eigenschaft gibt an, wie oft die Verbindung zum Endpunkt des Momentaufnahmedebuggers wiederhergestellt wird.How often we reconnect to the Snapshot Debugger endpoint. Das zulässige Intervall liegt zwischen 1 Minute und 1 Tag.Allowable range is one minute to one day.
shadowCopyFoldershadowCopyFolder NULLnull Diese Eigenschaft gibt den Ordner für Schattenkopien von Binärdateien an.Specifies the folder to use for shadow copying binaries. Wenn sie nicht festgelegt wird, werden die folgenden Umgebungsvariablen der Reihe nach versucht: Fabric_Folder_App_Temp, LOCALAPPDATA, APPDATA, TEMP.If not set, the folders specified by the following environment variables are tried in order: Fabric_Folder_App_Temp, LOCALAPPDATA, APPDATA, TEMP.
shareUploaderProcessshareUploaderProcess truetrue Wenn diese Eigenschaft den Wert TRUE aufweist, werden Momentaufnahmen für mehrere Apps mit dem gleichen InstrumentationKey-Wert von einer SnapshotUploader-Instanz erfasst und hochgeladen.If true, only one instance of SnapshotUploader will collect and upload snapshots for multiple apps that share the InstrumentationKey. Wenn der Wert FALSE vorliegt, wird eine eindeutige SnapshotUploader-Instanz für jedes Tupel (ProcessName, InstrumentationKey) verwendet.If set to false, the SnapshotUploader will be unique for each (ProcessName, InstrumentationKey) tuple.
snapshotInLowPriorityThreadsnapshotInLowPriorityThread truetrue Diese Eigenschaft bestimmt, ob Momentaufnahmen in einem Thread mit niedriger E/A-Priorität verarbeitet werden.Determines whether or not to process snapshots in a low IO priority thread. Das Erstellen einer Momentaufnahme ist ein schneller Vorgang, aber um eine Momentaufnahme in den Momentaufnahmedebuggerdienst hochzuladen, muss sie erst als Minidump auf den Datenträger geschrieben werden.Creating a snapshot is a fast operation but, in order to upload a snapshot to the Snapshot Debugger service, it must first be written to disk as a minidump. Dies geschieht im SnapshotUploader-Prozess.That happens in the SnapshotUploader process. Wenn TRUE für diesen Wert festgelegt wird, wird eine niedrige E/A-Priorität zum Schreiben des Minidumps verwendet, sodass der Prozess nicht mit Ihrer Anwendung um Ressourcen konkurriert.Setting this value to true uses low-priority IO to write the minidump, which won't compete with your application for resources. Wenn FALSE für diesen Wert festgelegt wird, erfolgt die Erstellung des Minidumps schneller, jedoch wird Ihre Anwendung verlangsamt.Setting this value to false speeds up minidump creation at the expense of slowing down your application.
snapshotsPerDayLimitsnapshotsPerDayLimit 3030 Diese Eigenschaft legt die maximal zulässige Anzahl von Momentaufnahmen pro Tag (24 Stunden) fest.The maximum number of snapshots allowed in one day (24 hours). Dieser Schwellenwert wird auch für den Application Insights-Dienst festgelegt.This limit is also enforced on the Application Insights service side. Die Uploads sind pro Anwendung auf 50 pro Tag beschränkt (d. h. pro Instrumentierungsschlüssel).Uploads are rate limited to 50 per day per application (that is, per instrumentation key). Mit diesem Wert wird verhindert, dass zusätzliche Momentaufnahmen erstellt werden, die letztendlich während des Uploads abgelehnt werden.This value helps prevent creating additional snapshots that will eventually be rejected during upload. Wenn der Wert „0“ (null) festgelegt wird, wird der Schwellenwert vollständig aufgehoben, was nicht empfohlen wird.A value of zero removes the limit entirely, which isn't recommended.
snapshotsPerTenMinutesLimitsnapshotsPerTenMinutesLimit 11 Diese Eigenschaft legt die maximal zulässige Anzahl von Momentaufnahmen für einen Zeitraum von 10 Minuten fest.The maximum number of snapshots allowed in 10 minutes. Obwohl es für diesen Wert keine Obergrenze gibt, sollten Sie ihn für Produktionsworkloads nur mit Bedacht erhöhen, da er sich auf die Leistung Ihrer Anwendung auswirken kann.Although there is no upper bound on this value, exercise caution increasing it on production workloads because it could impact the performance of your application. Zwar ist die Erstellung einer Momentaufnahme ein schneller Prozess, jedoch ist das Erstellen eines Minidumps des Snapshots und Hochladen in den Momentaufnahmedebuggerdienst ein deutlich langsamerer Vorgang, der mit Ihrer Anwendung um Ressourcen konkurriert (sowohl CPU- als auch E/A-Ressourcen).Creating a snapshot is fast, but creating a minidump of the snapshot and uploading it to the Snapshot Debugger service is a much slower operation that will compete with your application for resources (both CPU and I/O).
tempFoldertempFolder NULLnull Diese Eigenschaft legt den Ordner fest, in den Minidumps und Uploaderprotokolldateien geschrieben werden.Specifies the folder to write minidumps and uploader log files. Wenn kein Wert festgelegt wird, wird %TEMP%\Dumps verwendet.If not set, then %TEMP%\Dumps is used.
thresholdForSnapshottingthresholdForSnapshotting 11 Diese Eigenschaft gibt an, wie viele Ausnahmen Application Insights ermitteln muss, bevor Momentaufnahmen angefordert werden.How many times Application Insights needs to see an exception before it asks for snapshots.
uploaderProxyuploaderProxy NULLnull Diese Eigenschaft überschreibt den Proxyserver, der vom SnapshotUploader-Prozess verwendet wird.Overrides the proxy server used in the Snapshot Uploader process. Sie müssen diese Einstellung möglicherweise verwenden, wenn Ihre Anwendung eine Internetverbindung über einen Proxyserver herstellt.You may need to use this setting if your application connects to the internet via a proxy server. Snapshot Collector wird im Prozess Ihrer Anwendung ausgeführt und verwendet die gleichen Proxyeinstellungen.The Snapshot Collector runs within your application's process and will use the same proxy settings. Der SnapshotUploader-Prozess wird jedoch separat ausgeführt, und Sie müssen den Proxyserver möglicherweise manuell konfigurieren.However, the Snapshot Uploader runs as a separate process and you may need to configure the proxy server manually. Wenn diese Eigenschaft den Wert NULL aufweist, versucht Snapshot Collector die Proxyadresse automatisch zu ermitteln, indem System.Net.WebRequest.DefaultWebProxy untersucht und der Wert an den SnapshotUploader-Prozess übergeben wird.If this value is null, then Snapshot Collector will attempt to autodetect the proxy's address by examining System.Net.WebRequest.DefaultWebProxy and passing on the value to the Snapshot Uploader. Wenn nicht der Wert NULL vorliegt, wird die automatische Ermittlung nicht verwendet und der hier angegebene Proxyserver wird im SnapshotUploader-Prozess verwendet.If this value isn't null, then autodetection isn't used and the proxy server specified here will be used in the Snapshot Uploader.

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.

extensionBundleextensionBundle

Mit Erweiterungsbündeln können Sie kompatible Bindungserweiterungen von Azure Functions zu Ihrer Funktions-App hinzufügen.Extension bundles let you add a compatible set of Functions binding extensions to your function app. Weitere Informationen finden Sie unter Erweiterungsbündel für die lokale Entwicklung.To learn more, see Extension bundles for local development.

{
    "version": "2.0",
    "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle",
        "version": "[1.*, 2.0.0)"
    }
}

In extensionBundle sind die folgenden Eigenschaften verfügbar:The following properties are available in extensionBundle:

EigenschaftProperty BESCHREIBUNGDescription
idid Der Namespace für Microsoft Azure Functions-Erweiterungsbündel.The namespace for Microsoft Azure Functions extension bundles.
versionversion Die Version des zu installierenden Pakets.The version of the bundle to install. Die Functions Runtime wählt immer die zulässige Höchstversion aus, die durch den Versionsbereich oder das Intervall definiert ist.The Functions runtime always picks the maximum permissible version defined by the version range or interval. Mit dem obigen Versionswert sind alle Bündelversionen von 1.0.0 bis kleiner als 2.0.0 zulässig.The version value above allows all bundle versions from 1.0.0 up to but not including 2.0.0. Weitere Informationen finden Sie im Abschnitt zur Intervallnotation zum Angeben von Versionsbereichen.For more information, see the interval notation for specifying version ranges.

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.

PlantypPlan type Standard (Min.)Default (min) Maximum (Min.)Maximum (min)
NutzungConsumption 55 1010
Premium1Premium1 3030 -1 (unbegrenzt)2-1 (unbounded)2
Dediziert (App Service)Dedicated (App Service) 3030 -1 (unbegrenzt)2-1 (unbounded)2

1 Die Premium-Planausführung wird nur für 60 Minuten garantiert, ist aber eigentlich unbegrenzt.1 Premium plan execution is only guaranteed for 60 minutes, but technically unbounded.
2 Der Wert -1 gibt eine unbegrenzte Ausführung an, es wird jedoch empfohlen, eine feste Obergrenze zu verwenden.2 A value of -1 indicates unbounded execution, but keeping a fixed upper bound is recommended.

{
    "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 oder höher entspricht bei der Filterung der Protokollkategorie dem Layout von ASP.NET Core.Versions 2.x and later follow the ASP.NET Core layout for log category filtering. Mit dieser Einstellung können Sie die Protokollierung nach bestimmten Funktionen filtern.This setting 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.

retryretry

Steuert die Optionen der Wiederholungsrichtlinie für alle Ausführungen in der App.Controls the retry policy options for all executions in the app.

{
    "retry": {
        "strategy": "fixedDelay",
        "maxRetryCount": 2,
        "delayInterval": "00:00:03"  
    }
}
EigenschaftProperty StandardDefault BeschreibungDescription
strategystrategy NULLnull Erforderlich.Required. Die Wiederholungsstrategie, die verwendet werden soll.The retry strategy to use. Gültige Werte sind fixedDelay und exponentialBackoff.Valid values are fixedDelay or exponentialBackoff.
maxRetryCountmaxRetryCount NULLnull Erforderlich.Required. Die maximale Anzahl zulässiger Wiederholungen pro Funktionsausführung.The maximum number of retries allowed per function execution. -1 bedeutet unbegrenzte Wiederholungen.-1 means to retry indefinitely.
delayIntervaldelayInterval NULLnull Die Verzögerung zwischen Wiederholungsversuchen mit der Strategie fixedDelay.The delay that's used between retries with a fixedDelay strategy.
MinimumIntervallminimumInterval NULLnull Die geringste Wiederholungsverzögerung bei Verwendung der Strategie exponentialBackoff.The minimum retry delay when using exponentialBackoff strategy.
MaximumintervallmaximumInterval NULLnull Die höchste Wiederholungsverzögerung bei Verwendung der Strategie exponentialBackoff.The maximum retry delay when using exponentialBackoff strategy.

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

Dieser Wert gibt die Schemaversion von „host.json“ an.This value indicates the schema version of host.json. Die Versionszeichenfolge "version": "2.0" ist erforderlich für Funktions-Apps mit v2 oder höher der Runtime als Ziel.The version string "version": "2.0" is required for a function app that targets the v2 runtime, or a later version. Zwischen v2 und v3 wurden am Schema von „host.json“ keine Änderungen vorgenommen.There are no host.json schema changes between v2 and v3.

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" ]
}

Außerkraftsetzung der Werte in der Datei „host.json“Override host.json values

Es kann Fälle geben, in denen Sie spezifische Einstellungen in einer Datei vom Typ „host.json“ für eine bestimmte Datei konfigurieren oder ändern möchten, ohne die Datei „host.json“ selbst zu ändern.There may be instances where you wish to configure or modify specific settings in a host.json file for a specific environment, without changing the host.json file itself. Sie können bestimmte Werte in der Datei „host.json“ außer Kraft setzen, indem Sie einen entsprechenden Wert als Anwendungseinstellung erstellen.You can override specific host.json values be creating an equivalent value as an application setting. Wenn von der Runtime eine Anwendungseinstellung im Format AzureFunctionsJobHost__path__to__setting ermittelt wird, wird die entsprechende Einstellung in der JSON-Datei „host.json“ unter path.to.setting außer Kraft gesetzt.When the runtime finds an application setting in the format AzureFunctionsJobHost__path__to__setting, it overrides the equivalent host.json setting located at path.to.setting in the JSON. Bei der Angabe als Anwendungseinstellung wird der Punkt (.), mit dem die JSON-Hierarchie angegeben wird, durch einen doppelten Unterstrich (__) ersetzt.When expressed as an application setting, the dot (.) used to indicate JSON hierarchy is replaced by a double underscore (__).

Angenommen, Sie möchten die Application Insight-Stichprobenentnahme bei der lokalen Ausführung deaktivieren.For example, say that you wanted to disable Application Insight sampling when running locally. Wenn Sie die lokale Datei „host.json“ geändert haben, um Application Insights zu deaktivieren, wird diese Änderung unter Umständen während der Bereitstellung an Ihre Produktions-App gepusht.If you changed the local host.json file to disable Application Insights, this change might get pushed to your production app during deployment. Es ist sicherer, stattdessen die Anwendungseinstellung "AzureFunctionsJobHost__logging__applicationInsights__samplingSettings__isEnabled":"false" in der Datei local.settings.json zu erstellen.The safer way to do this is to instead create an application setting as "AzureFunctionsJobHost__logging__applicationInsights__samplingSettings__isEnabled":"false" in the local.settings.json file. Dies wird in der folgenden Datei vom Typ local.settings.json gezeigt, die nicht veröffentlicht wird:You can see this in the following local.settings.json file, which doesn't get published:

{
    "IsEncrypted": false,
    "Values": {
        "AzureWebJobsStorage": "{storage-account-connection-string}",
        "FUNCTIONS_WORKER_RUNTIME": "{language-runtime}",
        "AzureFunctionsJobHost__logging__applicationInsights__samplingSettings__isEnabled":"false"
    }
}

Nächste SchritteNext steps