Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Important
De ondersteuning voor versie 1.x van de Azure Functions-runtime eindigde op 14 september 2026. Migreer uw apps naar versie 4.x voor volledige ondersteuning.
Het host.json metagegevensbestand bevat configuratieopties die van invloed zijn op alle functies in een exemplaar van een functie-app. Dit artikel bevat de instellingen die beschikbaar zijn voor de runtime van versie 1.x. Het JSON-schema bevindt zich op http://json.schemastore.org/host.
Notitie
Dit artikel bewaart de host.json referentie voor Azure Functions runtime 1.x. Voor andere historische informatie, zie de runtime 1.x legacy referentie. Voor de referentie van de actuele host.json, zie host.json referentie voor Azure Functions 2.x en later.
Andere configuratieopties voor functie-apps worden beheerd in uw app-instellingen.
Sommige host.json-instellingen worden alleen gebruikt wanneer ze lokaal worden uitgevoerd in het local.settings.json-bestand .
Voorbeeldbestand host.json
In het volgende voorbeeld host.json bestanden zijn alle mogelijke opties opgegeven.
{
"aggregator": {
"batchSize": 1000,
"flushTimeout": "00:00:30"
},
"applicationInsights": {
"sampling": {
"isEnabled": true,
"maxTelemetryItemsPerSecond" : 5
}
},
"documentDB": {
"connectionMode": "Gateway",
"protocol": "Https",
"leaseOptions": {
"leasePrefix": "prefix"
}
},
"eventHub": {
"maxBatchSize": 64,
"prefetchCount": 256,
"batchCheckpointFrequency": 1
},
"functions": [ "QueueProcessor", "GitHubWebHook" ],
"functionTimeout": "00:05:00",
"healthMonitor": {
"enabled": true,
"healthCheckInterval": "00:00:10",
"healthCheckWindow": "00:02:00",
"healthCheckThreshold": 6,
"counterThreshold": 0.80
},
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 20,
"maxConcurrentRequests": 10,
"dynamicThrottlesEnabled": false
},
"id": "9f4ea53c5136457d883d685e57164f08",
"logger": {
"categoryFilter": {
"defaultLevel": "Information",
"categoryLevels": {
"Host": "Error",
"Function": "Error",
"Host.Aggregator": "Information"
}
}
},
"queues": {
"maxPollingInterval": 2000,
"visibilityTimeout" : "00:00:30",
"batchSize": 16,
"maxDequeueCount": 5,
"newBatchThreshold": 8
},
"sendGrid": {
"from": "Contoso Group <admin@contoso.com>"
},
"serviceBus": {
"maxConcurrentCalls": 16,
"prefetchCount": 100,
"autoRenewTimeout": "00:05:00",
"autoComplete": true
},
"singleton": {
"lockPeriod": "00:00:15",
"listenerLockPeriod": "00:01:00",
"listenerLockRecoveryPollingInterval": "00:01:00",
"lockAcquisitionTimeout": "00:01:00",
"lockAcquisitionPollingInterval": "00:00:03"
},
"tracing": {
"consoleLevel": "verbose",
"fileLoggingMode": "debugOnly"
},
"watchDirectories": [ "Shared" ],
}
In de volgende secties van dit artikel wordt elke eigenschap op het hoogste niveau uitgelegd. Alle zijn optioneel, tenzij anders aangegeven.
samenvoeger
Hiermee geeft u op hoeveel functieaanroepen worden geaggregeerd wanneer u meetwaarden voor Application Insights berekent.
{
"aggregator": {
"batchSize": 1000,
"flushTimeout": "00:00:30"
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
batchSize |
1000 | Maximaal aantal verzoeken om te aggregeren. |
flushTimeout |
00:00:30 | Maximale tijdsperiode voor aggregatie. |
Functie-aanroepen worden geaggregeerd wanneer de eerste van de twee limieten is bereikt.
applicationInsights
Hiermee beheert u de steekproeffunctie in Application Insights.
{
"applicationInsights": {
"sampling": {
"isEnabled": true,
"maxTelemetryItemsPerSecond" : 5
}
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
isEnabled |
waar | Hiermee worden steekproeven in- of uitgeschakeld. |
maxTelemetryItemsPerSecond |
5 | De drempelwaarde waarbij steekproeven worden gestart. |
DocumentDB
Configuratie-instellingen voor de Azure Cosmos DB-trigger en -koppelingen.
{
"documentDB": {
"connectionMode": "Gateway",
"protocol": "Https",
"leaseOptions": {
"leasePrefix": "prefix1"
}
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| GatewayModus | Toegangspoort | De verbindingsmodus die door de functie wordt gebruikt bij het verbinden met de Azure Cosmos DB-service. Opties zijn Direct en Gateway |
| protocol | Https | Het verbindingsprotocol dat door de functie wordt gebruikt wanneer verbinding met de Azure Cosmos DB-service wordt gemaakt. Lees hier voor een uitleg van beide modi |
| leasevoorvoegsel | n.v.t | Leasevoorvoegsel dat gebruikt wordt in alle functies van een app. |
duurzame taak
Configuratie-instellingen voor Durable Functions.
In Azure Functions runtime 1.x bevindt de durableTask sectie zich aan de wortel van het host.json bestand. De beschikbare instellingen hangen af van de versie van de Durable Functions-extensie. Voor de huidige configuratiereferentie, zie Durable Functions host.json instellingen.
eventHub
Configuratie-instellingen voor Event Hub-triggers en -bindingen.
functies
Een lijst met functies die door de taakhost worden uitgevoerd. Een lege matrix betekent dat alle functies worden uitgevoerd. Alleen bedoeld voor gebruik wanneer lokaal uitgevoerd. In functie-apps in Azure moet u in plaats daarvan de stappen in Hoe functies uitschakelen in Azure Functions volgen om specifieke functies uit te schakelen in plaats van deze instelling te gebruiken.
{
"functions": [ "QueueProcessor", "GitHubWebHook" ]
}
functionTimeout
Geeft de time-outduur voor alle functies aan. In een serverloos verbruiksabonnement is het geldige bereik van 1 seconde tot 10 minuten en de standaardwaarde is 5 minuten. In een App Service-plan is er geen algemene limiet en is de standaardwaarde null, wat aangeeft dat er geen time-out is.
{
"functionTimeout": "00:05:00"
}
gezondheidsmonitor
Configuratie-instellingen voor Host-statusmonitor.
{
"healthMonitor": {
"enabled": true,
"healthCheckInterval": "00:00:10",
"healthCheckWindow": "00:02:00",
"healthCheckThreshold": 6,
"counterThreshold": 0.80
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| ingeschakeld | waar | Hiermee geeft u op of de functie is ingeschakeld. |
| systeemgezondheidscontrolesinterval | 10 seconden | Het tijdsinterval tussen de periodieke gezondheidscontroles op de achtergrond. |
| gezondheidscontrolevenster | 2 minuten | Een schuiftijdvenster dat wordt gebruikt met de healthCheckThreshold instelling. |
| gezondheidscontrole-drempel | 6 | Maximaal aantal keren dat de gezondheidscontrole kan mislukken voordat een host-recycling wordt gestart. |
| tellerdrempel | 0.80 | De drempelwaarde waarboven een prestatiemeter als ongezond wordt beschouwd. |
http
Configuratie-instellingen voor HTTP-triggers en bindings.
{
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 100,
"dynamicThrottlesEnabled": true
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| DynamicThrottlesIngeschakeld | onwaar | Wanneer deze instelling is ingeschakeld, zorgt deze instelling ervoor dat de pijplijn voor het verwerken van aanvragen periodiek systeemprestatiemeteritems controleert, zoals verbindingen/threads/processen/geheugen/cpu/etc. en als een van deze tellers een ingebouwde hoge drempelwaarde (80%) overschrijdt, worden aanvragen geweigerd met een 429 'Te bezet' antwoord totdat de tellers terugkeren naar normale niveaus. |
| maxConcurrentRequests | onbegrensd (-1) |
Het maximum aantal HTTP-functies dat parallel wordt uitgevoerd. Hiermee kunt u gelijktijdigheid regelen, waardoor u het resourcegebruik kunt beheren. U hebt bijvoorbeeld een HTTP-functie die veel systeembronnen (geheugen/cpu/sockets) gebruikt, zodat er problemen optreden wanneer gelijktijdigheid te hoog is. Of misschien hebt u een functie waarmee uitgaande verzoeken worden gedaan naar een service van derden, en die aanroepen moeten beperkt worden in snelheid. In deze gevallen kan het toepassen van een beperking van snelheid hier helpen. |
| maxAantalOpenstaandeVerzoeken | onbegrensd (-1) |
Het maximum aantal openstaande aanvragen dat op elk gewenst moment wordt bewaard. Deze limiet omvat aanvragen die in de wachtrij worden geplaatst, maar die niet zijn gestart en eventuele lopende uitvoeringen. Eventuele binnenkomende aanvragen die deze limiet overschrijden, worden geweigerd met een antwoord van 429 'Te bezet'. Hierdoor kunnen bellers strategieën voor opnieuw proberen op basis van tijd gebruiken en kunt u ook maximale latenties voor aanvragen beheren. Dit bepaalt alleen wachtrijen die plaatsvinden binnen het uitvoeringspad van de scripthost. Andere wachtrijen, zoals de ASP.NET aanvraagwachtrij, worden nog steeds van kracht en worden niet beïnvloed door deze instelling. |
| routeVoorvoegsel | API | Het routevoorvoegsel dat van toepassing is op alle routes. Gebruik een lege tekenreeks om het standaardvoorvoegsel te verwijderen. |
identiteitskaart
De unieke ID voor een taakbeheerder. Kan een GUID in kleine letters met verwijderde streepjes zijn. Vereist bij lokale uitvoering. Als u in Azure werkt, raden we aan geen ID-waarde in te stellen. Er wordt automatisch een id gegenereerd in Azure wanneer id wordt weggelaten.
Als u een opslagaccount deelt in meerdere functie-apps, moet u ervoor zorgen dat elke functie-app een andere idheeft. U kunt de id eigenschap weglaten of elke functie-app id handmatig instellen op een andere waarde. De timertrigger maakt gebruik van een opslagvergrendeling om ervoor te zorgen dat er slechts één timerexemplaar is wanneer een functie-app wordt uitgebreid tot meerdere exemplaren. Als twee functie-apps hetzelfde id delen en elk een timertrigger gebruikt, wordt slechts één timer uitgevoerd.
{
"id": "9f4ea53c5136457d883d685e57164f08"
}
logboek
Hiermee bepaalt u het filteren van logboeken die zijn geschreven door een ILogger-object of door context.log.
{
"logger": {
"categoryFilter": {
"defaultLevel": "Information",
"categoryLevels": {
"Host": "Error",
"Function": "Error",
"Host.Aggregator": "Information"
}
}
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| categoryFilter | n.v.t | Specificeert filteren op categorie |
| standaardniveau | Gegevens | Voor alle categorieën die niet in de categoryLevels matrix zijn opgegeven, verzendt u logboeken op dit niveau en hoger naar Application Insights. |
| categorieniveaus | n.v.t | Een matrix met categorieën die het minimale logboekniveau specificeert dat moet worden verzonden naar Application Insights voor elke categorie. De categorie die hier wordt opgegeven, bepaalt alle categorieën die beginnen met dezelfde waarde en langere waarden hebben voorrang. In het voorgaande voorbeeldbestand host.json worden alle categorieën die beginnen met "Host.Aggregator" gelogd op Information niveau. Alle andere categorieën die beginnen met 'Host', zoals 'Host.Executor', loggen op Error niveau. |
wachtrijen
Configuratie-instellingen voor opslagwachtrijtriggers en -bindingen.
{
"queues": {
"maxPollingInterval": 2000,
"visibilityTimeout" : "00:00:30",
"batchSize": 16,
"maxDequeueCount": 5,
"newBatchThreshold": 8
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| maxPollingInterval | 60000 | Het maximale interval in milliseconden tussen wachtrijpeilingen. |
| zichtbaarheidstijdslimiet | 0 | Het tijdsinterval tussen herhaalde pogingen wanneer de verwerking van een bericht mislukt. |
| batchgrootte | 16 | Het aantal wachtrijberichten dat de Functions-runtime tegelijkertijd ophaalt en parallel verwerkt. Wanneer het aantal dat wordt verwerkt daalt tot newBatchThreshold, haalt de runtime een andere batch op en begint deze berichten te verwerken. Het maximum aantal gelijktijdige berichten dat per functie wordt verwerkt, is batchSize dus plus newBatchThreshold. Deze limiet geldt afzonderlijk voor elke functie die door de wachtrij wordt geactiveerd. Als u parallelle uitvoering wilt voorkomen voor berichten die in één wachtrij zijn ontvangen, kunt u instellen batchSize op 1. Deze instelling elimineert echter alleen gelijktijdigheid zolang uw functie-app wordt uitgevoerd op één virtuele machine (VM). Als de functie-app wordt uitgeschaald naar meerdere VM's, kan elke VM één exemplaar van elke door de wachtrij geactiveerde functie uitvoeren.Het maximum batchSize is 32. |
| MaximalAantalUitwachtingen | 5 | Het aantal keren dat u een bericht wilt verwerken voordat u het naar de gifwachtrij verplaatst. |
| newBatchThreshold | batchSize/2 | Telkens wanneer het aantal berichten dat gelijktijdig wordt verwerkt tot deze hoeveelheid daalt, haalt de runtime een nieuwe batch op. |
SendGrid
Configuratie-instelling voor de SendGrid outputbinding.
{
"sendGrid": {
"from": "Contoso Group <admin@contoso.com>"
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| van | n.v.t | Het e-mailadres van de afzender in alle functies. |
serviceBus
Configuratie-instelling voor Service Bus triggers en bindingen.
{
"serviceBus": {
"maxConcurrentCalls": 16,
"prefetchCount": 100,
"autoRenewTimeout": "00:05:00",
"autoComplete": true
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| maximale gelijktijdige oproepen | 16 | Het maximale aantal gelijktijdige oproepen naar de callback dat de message pump zou moeten initiëren. Standaard verwerkt de Functions-runtime meerdere berichten gelijktijdig. Als u de runtime wilt leiden om slechts één wachtrij of onderwerpbericht tegelijk te verwerken, stelt u in op maxConcurrentCalls 1. |
| voorladenAantal | n.v.t | De standaard PrefetchCount die zal worden gebruikt door de onderliggende ServiceBusReceiver. |
| autoRenewTimeout (automatische verlengingstijdlimiet) | 00:05:00 | De maximale duur waarin de berichtvergrendeling automatisch wordt vernieuwd. |
| automatisch aanvullen | waar | Wanneer waar, voltooit de trigger de berichtverwerking automatisch bij een geslaagde uitvoering van de bewerking. Indien onwaar, is het de verantwoordelijkheid van de functie om het bericht te voltooien voordat het wordt geretourneerd. |
singleton
Configuratie-instellingen voor Singleton-vergrendelingsgedrag. Zie GitHub probleem met singleton-ondersteuning voor meer informatie.
{
"singleton": {
"lockPeriod": "00:00:15",
"listenerLockPeriod": "00:01:00",
"listenerLockRecoveryPollingInterval": "00:01:00",
"lockAcquisitionTimeout": "00:01:00",
"lockAcquisitionPollingInterval": "00:00:03"
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| vergrendelingsperiode | 00:00:15 | De periode waarvoor functieniveauvergrendelingen worden gebruikt. De vergrendeling wordt automatisch vernieuwd. |
| luisteraarvergrendelingsperiode | 00:01:00 | De periode waarvoor listenervergrendelingen worden gebruikt. |
| Herstelinterval voor polling van luisteraarvergrendeling | 00:01:00 | Het tijdsinterval dat wordt gebruikt voor herstel van listenervergrendeling als een listenervergrendeling niet kan worden verkregen bij het opstarten. |
| lockAcquisitionTimeout | 00:01:00 | De maximale tijd dat de runtime probeert een lock te verkrijgen. |
| lockAcquisitionPollingInterval | n.v.t | Het interval tussen pogingen om vergrendeling te verkrijgen. |
traceren
Versie 1.x
Configuratie-instellingen voor logboeken die u maakt met behulp van een TraceWriter object. Zie [C#-logboekregistratie] voor meer informatie.
{
"tracing": {
"consoleLevel": "verbose",
"fileLoggingMode": "debugOnly"
}
}
| Eigendom | Standaard | Beschrijving |
|---|---|---|
| consoleNiveau | informatie | Het traceerniveau voor consolelogging. Opties zijn: off, error, warning, en infoverbose. |
| bestand-logboekmodus | alleen voor foutopsporing | Het traceringsniveau voor logboekregistratie van bestanden. Opties zijnnever, always, . debugOnly |
watchDirectories
Een set gedeelde codemappen die moeten worden bewaakt voor wijzigingen. Zorgt ervoor dat wanneer code in deze mappen wordt gewijzigd, de wijzigingen worden opgehaald door uw functies.
{
"watchDirectories": [ "Shared" ]
}