Referenční informace k souboru host.json pro Azure Functions 2.x a novější
Soubor metadat host.json obsahuje možnosti konfigurace, které ovlivňují všechny funkce v instanci aplikace funkcí. Tento článek uvádí nastavení, která jsou k dispozici od verze 2.x modulu runtime Azure Functions.
Poznámka:
Tento článek je určený pro Azure Functions 2.x a novější verze. Referenční informace o host.json ve službě Functions 1.x najdete v host.json referenčních informacích ke službě Azure Functions 1.x.
Další možnosti konfigurace aplikace funkcí se spravují v závislosti na tom, kde aplikace funkcí běží:
- Nasazené do Azure: v nastavení aplikace
- V místním počítači: v souboru local.settings.json .
Konfigurace v host.json souvisejících s vazbami se aplikují rovnoměrně na každou funkci v aplikaci funkcí.
Nastavení můžete také přepsat nebo použít pro každé prostředí pomocí nastavení aplikace.
Ukázkový soubor host.json
Následující ukázkový soubor host.json verze 2.x+ obsahuje všechny možné možnosti (s výjimkou všech, které jsou určené jenom pro interní použití).
{
"version": "2.0",
"aggregator": {
"batchSize": 1000,
"flushTimeout": "00:00:30"
},
"concurrency": {
"dynamicConcurrencyEnabled": true,
"snapshotPersistenceEnabled": true
},
"extensions": {
"blobs": {},
"cosmosDb": {},
"durableTask": {},
"eventHubs": {},
"http": {},
"queues": {},
"sendGrid": {},
"serviceBus": {}
},
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.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"
},
"dependencyTrackingOptions": {
"enableSqlCommandTextInstrumentation": true
},
"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
},
"singleton": {
"lockPeriod": "00:00:15",
"listenerLockPeriod": "00:01:00",
"listenerLockRecoveryPollingInterval": "00:01:00",
"lockAcquisitionTimeout": "00:01:00",
"lockAcquisitionPollingInterval": "00:00:03"
},
"telemetryMode": "OpenTelemetry",
"watchDirectories": [ "Shared", "Test" ],
"watchFiles": [ "myFile.txt" ]
}
Následující části tohoto článku vysvětlují jednotlivé vlastnosti nejvyšší úrovně. Všechny jsou volitelné, pokud není uvedeno jinak.
agregátor
Určuje, kolik volání funkcí se agreguje při výpočtu metrik pro Application Insights.
{
"aggregator": {
"batchSize": 1000,
"flushTimeout": "00:00:30"
}
}
Vlastnost | Výchozí | Popis |
---|---|---|
batchSize | 1000 | Maximální počet požadavků, které se mají agregovat. |
flushTimeout | 00:00:30 | Maximální časové období, které se má agregovat. |
Vyvolání funkcí se agreguje při dosažení prvního ze dvou limitů.
applicationInsights
Toto nastavení je podřízené protokolování.
Možnosti ovládacích prvků pro Application Insights, včetně možností vzorkování
Kompletní strukturu JSON najdete v předchozím příkladu host.json souboru.
Poznámka:
Vzorkování protokolů může způsobit, že se některá spuštění nezobrazí v okně Monitorování Application Insights. Pokud se chcete vyhnout vzorkování protokolů, přidejte excludedTypes: "Request"
ji k hodnotě samplingSettings
.
Vlastnost | Výchozí | Popis |
---|---|---|
samplingSettings | Není k dispozici | Viz applicationInsights.samplingSettings. |
dependencyTrackingOptions | Není k dispozici | Viz applicationInsights.dependencyTrackingOptions. |
enableLiveMetrics | true | Povolí shromažďování živých metrik. |
enableDependencyTracking | true | Umožňuje sledování závislostí. |
enablePerformanceCountersCollection | true | Povolí kolekci čítačů výkonu Kudu. |
liveMetricsInitializationDelay | 00:00:15 | Jen pro interní potřebu |
httpAutoCollectionOptions | Není k dispozici | Viz applicationInsights.httpAutoCollectionOptions. |
snapshotConfiguration | Není k dispozici | Viz applicationInsights.snapshotConfiguration. |
applicationInsights.samplingSettings
Další informace o těchto nastaveních najdete v tématu Vzorkování v Application Insights.
Vlastnost | Výchozí | Popis |
---|---|---|
isEnabled | true | Povolí nebo zakáže vzorkování. |
maxTelemetryItemsPerSecond | 20 | Cílový počet položek telemetrie protokolovaných za sekundu na každém hostiteli serveru. Pokud vaše aplikace běží na mnoha hostitelích, snižte tuto hodnotu tak, aby zůstala v celkové cílové míře provozu. |
evaluationInterval | 01:00:00 | Interval, ve kterém se opětovně zhodnotí aktuální rychlost telemetrie. Vyhodnocení se provádí jako klouzavý průměr. Tento interval můžete zkrátit, pokud vaše telemetrie odpovídá náhlému nárůstu. |
initialSamplingPercentage | 100.0 | Počáteční procento vzorkování použité na začátku procesu vzorkování se dynamicky liší. Při ladění nezmenšujte hodnotu. |
samplingPercentageIncreaseTimeout | 00:00:01 | Když se změní procentuální hodnota vzorkování, tato vlastnost určuje, jak brzy bude služba Application Insights moci znovu zvýšit procento vzorkování, aby zachytila více dat. |
samplingPercentageDecreaseTimeout | 00:00:01 | Když se změní procentuální hodnota vzorkování, tato vlastnost určuje, jak brzy bude služba Application Insights moct znovu snížit procento vzorkování, aby se zachytála méně dat. |
minSamplingPercentage | 0,1 | Vzhledem k tomu, že se procento vzorkování liší, tato vlastnost určuje minimální povolené procento vzorkování. |
maxSamplingPercentage | 100.0 | Vzhledem k tomu, že se procento vzorkování liší, určuje tato vlastnost maximální povolené procento vzorkování. |
movingAverageRatio | 1.0 | Při výpočtu klouzavého průměru je váha přiřazená k nejnovější hodnotě. Použijte hodnotu rovnou nebo menší než 1. Menší hodnoty činí algoritmus méně reaktivní na náhlé změny. |
excludedTypes | null | Seznam typů oddělených středníkem, které nechcete vzorkovat. Rozpoznané typy jsou: Dependency , Event , Exception PageView , Request , a Trace . Všechny instance zadaných typů jsou přenášeny; typy, které nejsou zadané, se vzorkují. |
includedTypes | null | Středník oddělený seznam typů, které chcete vzorkovat; Prázdný seznam znamená všechny typy. Tady jsou uvedené excludedTypes typy přepsání. Rozpoznané typy jsou: Dependency , Event , Exception PageView , Request , a Trace . Instance zadaných typů jsou vzorkovány; typy, které nejsou zadané nebo předpokládané, se přenášejí bez vzorkování. |
applicationInsights.httpAutoCollectionOptions
Vlastnost | Výchozí | Popis |
---|---|---|
enableHttpTriggerExtendedInfoCollection | true | Povolí nebo zakáže rozšířené informace o požadavcích HTTP pro triggery HTTP: hlavičky korelace příchozích požadavků, podpora více instrumentačních klíčů, metoda HTTP, cesta a odpověď. |
enableW3CDistributedTracing | true | Povolí nebo zakáže podporu distribuovaného trasovacího protokolu W3C (a zapne starší schéma korelace). Ve výchozím nastavení je povoleno, pokud enableHttpTriggerExtendedInfoCollection je true. Pokud enableHttpTriggerExtendedInfoCollection je false, platí tento příznak pouze pro odchozí požadavky, nikoli příchozí požadavky. |
enableResponseHeaderInjection | true | Povolí nebo zakáže injektáž hlaviček korelace s více komponentami do odpovědí. Povolení injektáže umožňuje Application Insights vytvořit mapu aplikace, na které se použije několik instrumentačních klíčů. Ve výchozím nastavení je povoleno, pokud enableHttpTriggerExtendedInfoCollection je true. Toto nastavení neplatí, pokud enableHttpTriggerExtendedInfoCollection je false. |
applicationInsights.dependencyTrackingOptions
Vlastnost | Výchozí | Popis |
---|---|---|
enableSqlCommandTextInstrumentation | false (nepravda) | Povolí kolekci úplného textu dotazů SQL, která je ve výchozím nastavení zakázaná. Další informace o shromažďování textu dotazu SQL najdete v tématu Rozšířené sledování SQL, abyste získali úplný dotaz SQL. |
applicationInsights.snapshotConfiguration
Další informace o snímcích najdete v tématu Ladění snímků u výjimek v aplikacích .NET a řešení potíží s povolením ladicího programu snímků Application Insights nebo zobrazením snímků.
Vlastnost | Výchozí | Popis |
---|---|---|
agentEndpoint | null | Koncový bod použitý k připojení ke službě Application Insights Snapshot Debugger. Pokud je hodnota null, použije se výchozí koncový bod. |
captureSnapshotMemoryWeight | 0.5 | Váha zadaná aktuální velikosti paměti procesu při kontrole, jestli je k pořízení snímku dostatek paměti. Očekávaná hodnota je větší než 0 správný zlomek (0 < CaptureSnapshotMemoryWeight < 1). |
failedRequestLimit | 3 | Omezení počtu neúspěšných požadavků na vyžádání snímků před zakázání procesoru telemetrie. |
handleUntrackedExceptions | true | Povolí nebo zakáže sledování výjimek, které nejsou sledovány telemetrií Application Insights. |
isEnabled | true | Povolí nebo zakáže kolekci snímků. |
isEnabledInDeveloperMode | false (nepravda) | Povolí nebo zakáže shromažďování snímků v režimu vývojáře. |
isEnabledWhenProfiling | true | Povolí nebo zakáže vytváření snímků, i když profiler Application Insights shromažďuje podrobnou relaci profilace. |
isExceptionSnappointsEnabled | false (nepravda) | Povolí nebo zakáže filtrování výjimek. |
isLowPrioritySnapshotUploader | true | Určuje, zda se má spustit proces SnapshotUploader s nižší normální prioritou. |
maximumCollectionPlanSize | 50 | Maximální počet problémů, které můžeme kdykoli sledovat v rozsahu od 1 do 9999. |
maximumSnapshotsRequired | 3 | Maximální počet snímků shromážděných pro jeden problém v rozsahu od jednoho do 999. Problém může být považován za jednotlivý příkaz throw ve vaší aplikaci. Jakmile počet snímků shromážděných pro problém dosáhne této hodnoty, nebudou se pro tento problém shromažďovat žádné další snímky, dokud se čítače problémů resetují (viz) problemCounterResetInterval a thresholdForSnapshotting limit se dosáhne znovu. |
problemCounterResetInterval | 24:00:00 | Jak často se čítače problému resetují v rozsahu od jedné minuty do sedmi dnů. Po dosažení tohoto intervalu se všechny počty problémů resetují na nulu. Stávající problémy, které již dosáhly prahové hodnoty pro provádění snímků, ale dosud nevygenerovaly počet snímků, maximumSnapshotsRequired zůstanou aktivní. |
provideAnonymousTelemetry | true | Určuje, jestli se má odesílat anonymní využití a telemetrie chyb do Microsoftu. Tato telemetrie se může použít, pokud se obrátíte na Microsoft, abyste pomohli vyřešit problémy s ladicím programem Snapshot Debugger. Používá se také k monitorování vzorů použití. |
reconnectInterval | 00:15:00 | Jak často se znovu připojíme ke koncovému bodu Snapshot Debuggeru. Povolený rozsah je jedna minuta až jeden den. |
shadowCopyFolder | null | Určuje složku, která se má použít pro binární soubory stínové kopie. Pokud není nastavená, složky zadané následujícími proměnnými prostředí se pokusí v uvedeném pořadí: Fabric_Folder_App_Temp, LOCALAPPDATA, APPDATA, TEMP. |
shareUploaderProcess | true | Pokud je pravda, shromáždí a nahraje snímky pro více aplikací, které sdílejí InstrumentationKey, pouze jedna instance SnapshotUploaderu. Pokud je nastavená hodnota false, snapshotUploader bude jedinečný pro řazenou kolekci členů (ProcessName, InstrumentationKey). |
snapshotInLowPriorityThread | true | Určuje, jestli se mají snímky zpracovávat ve vlákně s nízkou prioritou vstupně-výstupních operací. Vytvoření snímku je rychlá operace, ale aby bylo možné nahrát snímek do služby Snapshot Debugger, musí se nejprve zapsat na disk jako minidump. K tomu dochází v procesu SnapshotUploader. Nastavení této hodnoty na true používá vstupně-výstupní operace s nízkou prioritou k zápisu minidumpu, který nebude soutěžit s vaší aplikací pro prostředky. Nastavením této hodnoty na hodnotu false se zrychlí vytvoření minidumpu na úkor zpomalení aplikace. |
snapshotsPerDayLimit | 30 | Maximální povolený počet snímků za jeden den (24 hodin). Tento limit se také vynucuje na straně služby Application Insights. Nahrávání je omezené na 50 za den na aplikaci (to znamená na instrumentační klíč). Tato hodnota pomáhá zabránit vytváření dalších snímků, které se nakonec při nahrávání zamítnou. Hodnota nuly odebere limit zcela, což se nedoporučuje. |
snapshotsPerTenMinutesLimit | 0 | Maximální povolený počet snímků za 10 minut. I když u této hodnoty není žádná horní mez, buďte opatrní, protože by to mohlo mít vliv na výkon vaší aplikace. Vytvoření snímku je rychlé, ale vytvoření minidump snímku a jeho nahrání do služby Snapshot Debugger je mnohem pomalejší operace, která bude soupeřit s vaší aplikací o prostředky (procesor i vstupně-výstupní operace). |
tempFolder | null | Určuje složku pro zápis minidumps a nahrávací soubory protokolu. Pokud není nastavená, použije se %TEMP%\Dumps . |
prahová hodnotaForSnapshotting | 0 | Kolikrát application Insights potřebuje vidět výjimku, než požádá o snímky. |
uploaderProxy | null | Přepíše proxy server použitý v procesu Nahrávání snímků. Toto nastavení možná budete muset použít, pokud se vaše aplikace připojuje k internetu přes proxy server. Kolektor snímků běží v rámci procesu vaší aplikace a použije stejné nastavení proxy serveru. Nástroj Pro nahrávání snímků ale běží jako samostatný proces a možná budete muset proxy server nakonfigurovat ručně. Pokud má tato hodnota hodnotu null, pokusí se služba Snapshot Collector automaticky zjistit adresu proxy serveru prozkoumáním System.Net.WebRequest.DefaultWebProxy a předáním hodnoty službě Snapshot Uploader. Pokud tato hodnota není null, autodetection se nepoužije a proxy server zadaný zde se použije v nástroji Snapshot Uploader. |
objekty blob
Nastavení konfigurace najdete v triggerech a vazbách objektů blob služby Storage.
konzola
Toto nastavení je podřízené protokolování. Řídí protokolování konzoly, pokud není v režimu ladění.
{
"logging": {
...
"console": {
"isEnabled": false,
"DisableColors": true
},
...
}
}
Vlastnost | Výchozí | Popis |
---|---|---|
DisableColors | false (nepravda) | Potlačí formátování protokolu v protokolech kontejneru v Linuxu. Pokud se v protokolech kontejneru při spuštění v Linuxu zobrazují nežádoucí řídicí znaky ANSI, nastavte na hodnotu true. |
isEnabled | false (nepravda) | Povolí nebo zakáže protokolování konzoly. |
Azure Cosmos DB
Nastavení konfigurace najdete v triggerech a vazbách služby Azure Cosmos DB.
customHandler
Nastavení konfigurace pro vlastní obslužnou rutinu Další informace najdete v tématu Vlastní obslužné rutiny Azure Functions.
"customHandler": {
"description": {
"defaultExecutablePath": "server",
"workingDirectory": "handler",
"arguments": [ "--port", "%FUNCTIONS_CUSTOMHANDLER_PORT%" ]
},
"enableForwardingHttpRequest": false
}
Vlastnost | Výchozí | Popis |
---|---|---|
defaultExecutablePath | Není k dispozici | Spustitelný soubor, který se má spustit jako vlastní proces obslužné rutiny. Je to povinné nastavení při použití vlastních obslužných rutin a jeho hodnota je relativní vůči kořenovému adresáři aplikace funkcí. |
workingDirectory | Kořen aplikace funkcí | Pracovní adresář, ve kterém se má spustit vlastní proces obslužné rutiny. Jedná se o volitelné nastavení a jeho hodnota je relativní vzhledem k kořenovému adresáři aplikace funkcí. |
argumenty | Není k dispozici | Pole argumentů příkazového řádku, které se mají předat procesu vlastní obslužné rutiny. |
enableForwardingHttpRequest | false (nepravda) | Pokud je tato možnost nastavená, všechny funkce, které se skládají pouze z triggeru HTTP, a výstup HTTP se předávají původní požadavek HTTP místo datové části požadavku vlastní obslužné rutiny. |
durableTask
Nastavení konfigurace najdete ve vazbách pro Durable Functions.
souběžnost
Umožňuje dynamickou souběžnost pro konkrétní vazby v aplikaci funkcí. Další informace najdete v tématu Dynamické souběžnosti.
{
"concurrency": {
"dynamicConcurrencyEnabled": true,
"snapshotPersistenceEnabled": true
}
}
Vlastnost | Výchozí | Popis |
---|---|---|
dynamicConcurrencyEnabled | false (nepravda) | Umožňuje dynamické chování souběžnosti pro všechny triggery podporované touto funkcí, které je ve výchozím nastavení vypnuté. |
snapshotPersistenceEnabled | true | Naučené hodnoty souběžnosti se pravidelně uchovávají v úložišti, takže nové instance začínají od těchto hodnot místo toho, aby začínaly od 1 a nemusely se učit znovu. |
eventHub
Nastavení konfigurace najdete v triggerech a vazbách centra událostí.
rozšíření
Vlastnost, která vrací objekt, který obsahuje všechna nastavení specifická pro vazbu, jako je http a eventHub.
extensionBundle
Sady rozšíření umožňují přidat do aplikace funkcí kompatibilní sadu rozšíření vazeb functions. Další informace najdete v tématu Sady rozšíření pro místní vývoj.
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
V objektu extensionBundle
jsou k dispozici následující vlastnosti:
Vlastnost | Popis |
---|---|
id |
Obor názvů pro sady rozšíření Microsoft Azure Functions |
version |
Rozsah verzí sady, která se má nainstalovat. Modul runtime služby Functions vždy vybere maximální přípustnou verzi definovanou rozsahem nebo intervalem verzí. Například version rozsah [4.0.0, 5.0.0) hodnot umožňuje všechny verze sady z verze 4.0.0 až do 5.0.0, ale nezahrnuje 5.0.0. Další informace najdete v části věnované zápisu intervalů pro zadávání rozsahů verzí. |
– funkce
Seznam funkcí, které hostitel úlohy spouští. Prázdné pole znamená spuštění všech funkcí. Určeno k použití pouze při místním spuštění. V aplikacích funkcí v Azure byste měli místo toho postupovat podle kroků v části Jak zakázat funkce ve službě Azure Functions a zakázat konkrétní funkce místo použití tohoto nastavení.
{
"functions": [ "QueueProcessor", "GitHubWebHook" ]
}
functionTimeout
Určuje dobu trvání časového limitu pro všechna spuštění funkce. Řídí se formátem řetězce časového rozsahu.
Typ plánu | Výchozí (min. ) | Maximum (min) |
---|---|---|
Využití | 5 | 10 |
Premium1 | 30 | -1 (nevázané)2 |
Dedicated (App Service) | 30 | -1 (nevázané)2 |
1 Spuštění plánu Premium je zaručeno pouze po dobu 60 minut, ale technicky nevázané.
2 Hodnota -1
indikuje nevázané spuštění, ale doporučuje se zachovat pevnou horní mez.
{
"functionTimeout": "00:05:00"
}
healthMonitor
Nastavení konfigurace pro monitorování stavu hostitele
{
"healthMonitor": {
"enabled": true,
"healthCheckInterval": "00:00:10",
"healthCheckWindow": "00:02:00",
"healthCheckThreshold": 6,
"counterThreshold": 0.80
}
}
Vlastnost | Výchozí | Popis |
---|---|---|
enabled | true | Určuje, jestli je funkce povolená. |
healthCheckInterval | 10 sekund | Časový interval mezi pravidelnými kontrolami stavu na pozadí. |
healthCheckWindow | 2 minuty | Posuvné časové okno použité ve spojení s healthCheckThreshold nastavením. |
healthCheckThreshold | 6 | Maximální počet selhání kontroly stavu před zahájením recyklace hostitele |
counterThreshold | 0.80 | Prahová hodnota, při které bude čítač výkonu považován za poškozený. |
http
Nastavení konfigurace najdete v triggerech a vazbách HTTP.
protokolování
Řídí chování protokolování aplikace funkcí, včetně Application Insights.
"logging": {
"fileLoggingMode": "debugOnly",
"logLevel": {
"Function.MyFunction": "Information",
"default": "None"
},
"console": {
...
},
"applicationInsights": {
...
}
}
Vlastnost | Výchozí | Popis |
---|---|---|
fileLoggingMode | DebugOnly | Určuje chování protokolování souborů při spuštění v Azure. Možnosti jsou never , always a debugOnly . Toto nastavení se nepoužívá při místním spuštění. Pokud je to možné, měli byste při ladění funkcí v Azure použít Application Insights. Použití always negativních dopadů na chování při studeném spuštění aplikace a propustnost dat. Výchozí debugOnly nastavení generuje soubory protokolů při ladění pomocí webu Azure Portal. |
logLevel | Není k dispozici | Objekt, který definuje filtrování kategorií protokolu pro funkce v aplikaci. Toto nastavení umožňuje filtrovat protokolování pro konkrétní funkce. Další informace najdete v tématu Konfigurace úrovní protokolu. |
konzola | Není k dispozici | Nastavení protokolování konzoly . |
applicationInsights | Není k dispozici | Nastavení applicationInsights . |
managedDependency
Spravovaná závislost je funkce, která se v současné době podporuje jenom u funkcí založených na PowerShellu. Umožňuje automatickou správu závislostí službou. Pokud je vlastnost nastavena enabled
na true
, requirements.psd1
soubor se zpracuje. Závislosti se aktualizují při vydání všech podverzí. Další informace najdete v článku o spravované závislosti v PowerShellu.
{
"managedDependency": {
"enabled": true
}
}
fronty
Nastavení konfigurace najdete v triggerech a vazbách fronty služby Storage.
sendGrid
Nastavení konfigurace najdete v triggerech a vazbách SendGrid.
serviceBus
Nastavení konfigurace najdete v triggerech a vazbách služby Service Bus.
unikát
Nastavení konfigurace pro chování zámku Singleton. Další informace najdete v tématu o problému GitHubu s podporou singletonu.
{
"singleton": {
"lockPeriod": "00:00:15",
"listenerLockPeriod": "00:01:00",
"listenerLockRecoveryPollingInterval": "00:01:00",
"lockAcquisitionTimeout": "00:01:00",
"lockAcquisitionPollingInterval": "00:00:03"
}
}
Vlastnost | Výchozí | Popis |
---|---|---|
lockPeriod | 00:00:15 | Období, pro které se zamykají na úrovni funkce. Zámky se automaticky prodlužují. |
ListenerLockPeriod | 00:01:00 | Období, pro které se zamkne naslouchací proces, se používá. |
ListenerLockRecoveryPollingInterval | 00:01:00 | Časový interval použitý pro obnovení naslouchacího procesu, pokud se nepodařilo získat zámek naslouchacího procesu při spuštění. |
lockAcquisitionTimeout | 00:01:00 | Maximální doba, po kterou se modul runtime pokusí získat zámek. |
lockAcquisitionPollingInterval | Není k dispozici | Interval mezi pokusy o získání zámku. |
telemetryMode
Tato funkce je aktuálně ve verzi Preview.
Slouží k povolení výstupu protokolů a trasování ve výstupním formátu OpenTelemetry do jednoho nebo více koncových bodů, které podporují OpenTelemetry. Pokud je toto nastavení nastavené na OpenTelemetry
, použije se výstup OpenTelemetry. Ve výchozím nastavení bez tohoto nastavení se všechny protokoly, trasování a události odesílají do Application Insights pomocí standardních výstupů. Další informace najdete v tématu Použití OpenTelemetry se službou Azure Functions.
version
Tato hodnota označuje verzi schématu host.json. Řetězec "version": "2.0"
verze se vyžaduje pro aplikaci funkcí, která cílí na modul runtime v2 nebo novější verzi. Mezi v2 a v3 nejsou žádné změny schématu host.json.
watchDirectories
Sada sdílených adresářů kódu, které by měly být monitorovány pro změny. Zajišťuje, že když se změní kód v těchto adresářích, budou změny vyzvednuty vašimi funkcemi.
{
"watchDirectories": [ "Shared" ]
}
watchFiles
Pole jednoho nebo více názvů souborů, které jsou monitorovány pro změny, které vyžadují restartování aplikace. To zaručuje, že když se změní kód v těchto souborech, budou aktualizace vyzvednuty vašimi funkcemi.
{
"watchFiles": [ "myFile.txt" ]
}
Přepsání hodnot host.json
Mohou existovat případy, kdy chcete nakonfigurovat nebo upravit konkrétní nastavení v souboru host.json pro konkrétní prostředí, aniž byste změnili samotný soubor host.json. Konkrétní host.json hodnoty můžete přepsat vytvořením ekvivalentní hodnoty jako nastavení aplikace. Když modul runtime najde nastavení aplikace ve formátu, přepíše ekvivalentní nastavení host.json umístěné path.to.setting
ve formátu AzureFunctionsJobHost__path__to__setting
JSON. Pokud je vyjádřeno jako nastavení aplikace, tečka (.
) použitá k označení hierarchie JSON se nahradí dvojitým podtržítkem (__
).
Řekněme například, že chcete zakázat vzorkování Application Insights při místním spuštění. Pokud jste změnili místní soubor host.json tak, aby zakázal Application Insights, může se tato změna během nasazování odeslat do produkční aplikace. Bezpečnější způsob, jak to udělat, je místo toho vytvořit nastavení aplikace jako "AzureFunctionsJobHost__logging__applicationInsights__samplingSettings__isEnabled":"false"
v local.settings.json
souboru. Toto se zobrazí v následujícím local.settings.json
souboru, který se nepublikuje:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "{storage-account-connection-string}",
"FUNCTIONS_WORKER_RUNTIME": "{language-runtime}",
"AzureFunctionsJobHost__logging__applicationInsights__samplingSettings__isEnabled":"false"
}
}
Přepsání nastavení host.json pomocí proměnných prostředí se řídí ASP.NET základními konvencemi vytváření názvů. Pokud struktura elementu obsahuje pole, měl by být číselný index pole považován za další název elementu v této cestě. Další informace najdete v tématu Pojmenování proměnných prostředí.