Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Viktigt!
Stödet för version 1.x av Azure Functions-runtime upphörde den 14 september 2026. Migrera dina appar till version 4.x för fullständigt stöd.
Den host.json metadatafilen innehåller konfigurationsalternativ som påverkar alla funktioner i en funktionsappinstans. I den här artikeln visas de inställningar som är tillgängliga för version 1.x-körningen. JSON-schemat finns på http://json.schemastore.org/host.
Anteckning
Den här artikeln bevarar host.json referensen för Azure Functions runtime 1.x. För annan historisk information, se referensen för runtime 1.x legacy. För den aktuella host.json referensen, se host.json referens för Azure Functions 2.x och senare.
Andra konfigurationsalternativ för funktionsappar hanteras i appinställningarna.
Vissa host.json inställningar används bara när de körs lokalt i local.settings.json-filen.
Exempel på host.json fil
Följande exempel host.json filer har alla möjliga alternativ angivna.
{
"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" ],
}
I följande avsnitt i den här artikeln förklaras varje toppnivåegenskap. Alla är valfria om inget annat anges.
Samlare
Anger hur många funktionsanrop som aggregeras vid beräkning av mått för Application Insights.
{
"aggregator": {
"batchSize": 1000,
"flushTimeout": "00:00:30"
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
batchSize |
1 000 | Maximalt antal begäranden att aggregera. |
flushTimeout |
00:00:30 | Maximal tidsperiod att aggregera. |
Funktionsanrop aggregeras när den första av de två gränserna nås.
Applikationsinsikter
Styr samplingsfunktionen i Application Insights.
{
"applicationInsights": {
"sampling": {
"isEnabled": true,
"maxTelemetryItemsPerSecond" : 5
}
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
isEnabled |
sann | Aktiverar eller inaktiverar sampling. |
maxTelemetryItemsPerSecond |
5 | Tröskelvärdet då samplingen börjar. |
DocumentDB
Konfigurationsinställningar för utlösaren och bindningarna Azure Cosmos DB.
{
"documentDB": {
"connectionMode": "Gateway",
"protocol": "Https",
"leaseOptions": {
"leasePrefix": "prefix1"
}
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| Gateway-läge | Gateväg | Anslutningsläget som används av funktionen när du ansluter till Azure Cosmos DB-tjänsten. Alternativen är Direct och Gateway |
| Protokoll | Https | Anslutningsprotokollet som används av funktionen när du ansluter till Azure Cosmos DB-tjänsten. Läs här för en förklaring av båda lägena |
| leasePrefix | saknas | Lease-prefix att använda för alla funktioner i en app. |
hållbar uppgift
Konfigurationsinställningar för Durable Functions.
I Azure Functions runtime 1.x är sektionen durableTask roten ihost.json-filen. De tillgängliga inställningarna beror på versionen av Durable Functions-tillägget. För aktuell konfigurationsreferens, se Durable Functions host.json inställningar.
eventHub
Konfigurationsinställningar för Event Hub-utlösare och bindningar.
funktioner
En lista över funktioner som värdprogrammet kör. En tom matris innebär att köra alla funktioner. Avsedd endast för användning när den körs lokalt. I funktionsappar i Azure bör du i stället följa stegen i Så här inaktiverar du funktioner i Azure Functions för att inaktivera specifika funktioner i stället för att använda den här inställningen.
{
"functions": [ "QueueProcessor", "GitHubWebHook" ]
}
functionTimeout
Anger tidsgränsens varaktighet för alla funktioner. I en serverlös förbrukningsplan är det giltiga intervallet från 1 sekund till 10 minuter och standardvärdet är 5 minuter. I en App Service-plan finns det ingen total gräns och standardvärdet är null, vilket indikerar ingen tidsgräns.
{
"functionTimeout": "00:05:00"
}
hälsovervakning
Konfigurationsinställningar för Host health monitor.
{
"healthMonitor": {
"enabled": true,
"healthCheckInterval": "00:00:10",
"healthCheckWindow": "00:02:00",
"healthCheckThreshold": 6,
"counterThreshold": 0.80
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| aktiverad | sann | Anger om funktionen är aktiverad. |
| hälsokontrollintervall | 10 sekund | Tidsintervallet mellan de periodiska bakgrundshälsokontrollerna. |
| hälsokontrollfönster | 2 minuter | Ett glidande tidsfönster som används i samband med inställningen healthCheckThreshold. |
| hälsokontrolltröskel | 6 | Maximalt antal gånger som hälsokontrollen kan misslyckas innan värdåtervinningen initieras. |
| räknartröskel | 0.80 | Tröskelvärdet där en prestandaräknare anses vara felaktig. |
http
Konfigurationsinställningar för HTTP-triggers och bindningar.
{
"http": {
"routePrefix": "api",
"maxOutstandingRequests": 200,
"maxConcurrentRequests": 100,
"dynamicThrottlesEnabled": true
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| dynamiskaBegränsningarAktiverade | falskt | När den här inställningen är aktiverad gör den att pipelinen för bearbetning av begäranden regelbundet kontrollerar systemprestandaräknare som anslutningar/trådar/processer/minne/cpu/etc. och om någon av dessa räknare överskrider ett inbyggt högt tröskelvärde (80 %), avvisas begäranden med ett svar på 429 "För upptagen" tills räknarna återgår till normala nivåer. |
| maximalt antal samtidiga förfrågningar | obunden (-1) |
Det maximala antalet HTTP-funktioner som ska köras parallellt. På så sätt kan du kontrollera samtidighet, vilket kan hjälpa dig att hantera resursutnyttjande. Du kan till exempel ha en HTTP-funktion som använder många systemresurser (minne/cpu/sockets) så att den orsakar problem när samtidigheten är för hög. Eller så kan du ha en funktion som gör utgående begäranden till en tjänst från tredje part, och dessa anrop måste vara frekvensbegränsade. I dessa fall kan det vara till hjälp att tillämpa en begränsning här. |
| maxAntalUteståendeFörfrågningar | obunden (-1) |
Det maximala antalet utestående förfrågningar som hanteras vid varje given tidpunkt. Den här gränsen omfattar begäranden som är i kö men som inte har börjat köras och eventuella pågående körningar. Inkommande begäranden över den här gränsen avvisas med ett svar på 429 "För upptagen". Det gör det möjligt för anropare att använda tidsbaserade återförsöksstrategier och hjälper dig också att kontrollera maximala svarstider för begäranden. Detta styr bara köhantering som inträffar inom skriptvärdens exekveringsväg. Andra köer, till exempel ASP.NET begärandekön, kommer fortfarande att vara i kraft och påverkas inte av den här inställningen. |
| routPrefix | API | Routningsprefixet som gäller för alla vägar. Använd en tom sträng för att ta bort standardprefixet. |
Id-nummer
Det unika ID:t för en jobbhanteringsserver. Kan vara ett GUID med små bokstäver och utan bindestreck. Krävs när du kör lokalt. När du kör i Azure rekommenderar vi att du inte anger något ID-värde. Ett ID genereras automatiskt i Azure när id utelämnas.
Om du delar ett Lagringskonto mellan flera funktionsappar kontrollerar du att varje funktionsapp har olika id. Du kan utelämna egenskapen id eller manuellt ange ett annat värde för varje funktionsapp id . Timerutlösaren använder ett lagringslås för att säkerställa att det bara finns en timerinstans när en funktionsapp skalar ut till flera instanser. Om två funktionsappar delar samma id och var och en använder en timerutlösare körs bara en timer.
{
"id": "9f4ea53c5136457d883d685e57164f08"
}
Loggningsprogram
Styr filtrering för loggar som skrivits av ett ILogger-objekt eller av context.log.
{
"logger": {
"categoryFilter": {
"defaultLevel": "Information",
"categoryLevels": {
"Host": "Error",
"Function": "Error",
"Host.Aggregator": "Information"
}
}
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| kategorifilter | saknas | Anger filtrering efter kategori |
| defaultNivå | Information | För kategorier som inte har angetts i matrisen categoryLevels skickar du loggar på den här nivån och senare till Application Insights. |
| kategorinivåer | saknas | En matris med kategorier som anger den minsta loggnivå som ska skickas till Application Insights för varje kategori. Kategorin som anges här styr alla kategorier som börjar med samma värde, och längre värden har företräde. I föregående exempel på host.json-filen loggas alla kategorier som börjar med "Host.Aggregator" på Information-nivå. Alla andra kategorier som börjar med "Host", till exempel "Host.Executor", loggar på Error nivå. |
köer
Konfigurationsinställningar för lagerköutlösare och bindningar.
{
"queues": {
"maxPollingInterval": 2000,
"visibilityTimeout" : "00:00:30",
"batchSize": 16,
"maxDequeueCount": 5,
"newBatchThreshold": 8
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| maximal avfrågningsintervall | 60000 | Maximalt intervall i millisekunder mellan kömätningar. |
| synlighetFördröjning | 0 | Tidsintervallet mellan återförsök när bearbetningen av ett meddelande misslyckas. |
| batchstorlek | 16 | Antalet kömeddelanden som Functions-körningen hämtar samtidigt och processas parallellt. När talet som bearbetas kommer ned till newBatchThreshold, hämtar programmet en annan omgång och börjar bearbeta dessa meddelanden. Så det maximala antalet samtidiga meddelanden som bearbetas per funktion är batchSize plus newBatchThreshold. Den här gränsen gäller separat för varje köutlöst funktion. Om du vill undvika parallell körning för meddelanden som tas emot i en kö kan du ange batchSize till 1. Den här inställningen eliminerar dock endast samtidighet så länge funktionsappen körs på en enda virtuell dator (VM). Om funktionsappen skalas ut till flera virtuella datorer kan varje virtuell dator köra en instans av varje köaktiverad funktion.Maxvärdet batchSize är 32. |
| maxDequeueCount | 5 | Antalet gånger du försöker bearbeta ett meddelande innan du flyttar det till giftkön. |
| nyBatchGränsvärde | batchSize/2 | När antalet meddelanden som bearbetas samtidigt minskar till det här antalet, hämtar körtiden ett annat parti. |
SendGrid
Konfigurationsinställning för SendGrid-utgångsbindningen.
{
"sendGrid": {
"from": "Contoso Group <admin@contoso.com>"
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| från | saknas | Avsändarens e-postadress för alla funktioner. |
serviceBus
Konfigurationsinställning för Service Bus utlösare och bindningar.
{
"serviceBus": {
"maxConcurrentCalls": 16,
"prefetchCount": 100,
"autoRenewTimeout": "00:05:00",
"autoComplete": true
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| maximalt antal samtidiga samtal | 16 | Det maximala antalet samtidiga anrop till återanropet som meddelandepumpen ska initiera. Som standard bearbetar Functions-körningen flera meddelanden samtidigt. Om du vill dirigera körningen till att endast bearbeta en enskild kö eller ett ämnesmeddelande i taget anger du maxConcurrentCalls till 1. |
| prefetchCount | saknas | PrefetchCount-standardvärdet som ska användas av den underliggande ServiceBusReceiver:n. |
| automatisk förnyelse tidsgräns | 00:05:00 | Den maximala varaktighet inom vilken meddelandelåset förnyas automatiskt. |
| automatiskt slutförande | sann | När det är sant slutför utlösaren automatiskt meddelandebearbetningen vid framgångsrik operation. När det är falskt är det funktionens ansvar att slutföra meddelandet innan det returneras. |
Ensamstående objekt
Konfigurationsinställningar för Singleton-låsbeteende. Mer information finns i GitHub-ärende om singletonsupport.
{
"singleton": {
"lockPeriod": "00:00:15",
"listenerLockPeriod": "00:01:00",
"listenerLockRecoveryPollingInterval": "00:01:00",
"lockAcquisitionTimeout": "00:01:00",
"lockAcquisitionPollingInterval": "00:00:03"
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| låsningsperiod | 00:00:15 | Den tidsperiod under vilken lås på funktionsnivå tas. Låsen förnyas automatiskt. |
| lyssnarlåsningsperiod | 00:01:00 | Den period som lyssnarlås är tagna för. |
| listenerLockÅterställningsPollIntervall | 00:01:00 | Tidsintervallet som används för återställning av lyssnarlås om det inte gick att hämta ett lyssnarlås vid start. |
| lockAcquisitionTimeout | 00:01:00 | Den maximala tidsmängd som körtiden försöker att erhålla ett lås. |
| lockAcquisitionPollingInterval | saknas | Intervallet mellan försök att få låsning. |
Spårning
Version 1.x
Konfigurationsinställningar för loggar som du skapar med hjälp av ett TraceWriter objekt. Mer information finns i [C#-loggning].
{
"tracing": {
"consoleLevel": "verbose",
"fileLoggingMode": "debugOnly"
}
}
| Egendom | Standardvärde | beskrivning |
|---|---|---|
| konsolenivå | information | Spårningsnivån för konsolloggning. Alternativen är: off, error, warning, infooch verbose. |
| filLoggningsläge | endast felsökning | Spårningsnivån för filloggning. Alternativen är never, always, debugOnly. |
watchDirectories
En uppsättning delade kodkataloger som ska övervakas för ändringar. Säkerställer att när koden i dessa kataloger ändras hämtas ändringarna av dina funktioner.
{
"watchDirectories": [ "Shared" ]
}