Host. JSON-hivatkozás Azure Functions 2. x rendszerhezhost.json reference for Azure Functions 2.x

A Host. JSON metaadat-fájl olyan globális konfigurációs beállításokat tartalmaz, amelyek a Function app összes funkcióját érintik.The host.json metadata file contains global configuration options that affect all functions for a function app. Ez a cikk a v2 futtatókörnyezethez elérhető beállításokat sorolja fel.This article lists the settings that are available for the v2 runtime.

Megjegyzés

Ez a cikk a 2. x Azure Functions.This article is for Azure Functions 2.x. Az a funkciók host.json odkaz 1.x, lásd: Azure Functions – host.json referencia 1.x.For a reference of host.json in Functions 1.x, see host.json reference for Azure Functions 1.x.

Az alkalmazás beállításaibanaz egyéb Function app konfigurációs beállításai is kezelhetők.Other function app configuration options are managed in your app settings.

Néhány gazdagép. JSON-beállítás csak akkor használatos, ha helyileg fut a Local. Settings. JSON fájlban.Some host.json settings are only used when running locally in the local.settings.json file.

Példa Host. JSON fájlraSample host.json file

A következő minta Host. JSON fájlokhoz minden lehetséges beállítás van megadva.The following sample host.json files have all possible options specified.

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

A cikk következő fejezetei ismertetik az egyes legfelső szintű tulajdonságokat.The following sections of this article explain each top-level property. Ha másként nincs megadva, az összes megadása nem kötelező.All are optional unless otherwise indicated.

aggregatoraggregator

Megadja, hogy hány függvény meghívásához összesített mikor kiszámítása a metrikákat az Application Insights.Specifies how many function invocations are aggregated when calculating metrics for Application Insights.

{
    "aggregator": {
        "batchSize": 1000,
        "flushTimeout": "00:00:30"
    }
}
TulajdonságProperty AlapértelmezettDefault LeírásDescription
batchSizebatchSize 10001000 Kérelmek maximális számát az összesítést.Maximum number of requests to aggregate.
flushTimeoutflushTimeout 00:00:3000:00:30 Maximális idő időszak alatt, és összesítést.Maximum time period to aggregate.

Összesítjük függvény meghívásához, ha a kettő közül az első korlátozza elérésekor.Function invocations are aggregated when the first of the two limits are reached.

applicationInsightsapplicationInsights

Ez a beállítás a naplózásgyermeke.This setting is a child of logging.

A Application Insights mintavételi funkciójátvezérli.Controls the sampling feature in Application Insights.

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

Megjegyzés

A napló mintavételezése miatt előfordulhat, hogy egyes végrehajtások nem jelennek meg a Application Insights figyelő paneljén.Log sampling may cause some executions to not show up in the Application Insights monitor blade.

TulajdonságProperty AlapértelmezettDefault LeírásDescription
isEnabledisEnabled truetrue Engedélyezheti vagy letilthatja a mintavételezést.Enables or disables sampling.
maxTelemetryItemsPerSecondmaxTelemetryItemsPerSecond 55 A mintavételezés megkezdésének küszöbértéke.The threshold at which sampling begins.

cosmosDbcosmosDb

A konfigurációs beállítás Cosmos db eseményindítókban és kötésekbentalálható.Configuration setting can be found in Cosmos DB triggers and bindings.

durableTaskdurableTask

A konfigurációs beállítás a Durable functions kötéseibentalálható.Configuration setting can be found in bindings for Durable Functions.

eventHubeventHub

A konfigurációs beállítások az Event hub-eseményindítókban és-kötésekben találhatók.Configuration settings can be found in Event Hub triggers and bindings.

Extensionsextensions

Tulajdonság, amely egy olyan objektumot ad vissza, amely tartalmazza az összes kötési beállítást, például a http -t és a eventHub.Property that returns an object that contains all of the binding-specific settings, such as http and eventHub.

függvényfunctions

A gazdagép által futtatott függvények listája.A list of functions that the job host runs. Az üres tömb az összes függvény futtatását jelenti.An empty array means run all functions. Csak helyileg futtatotthasználatra készült.Intended for use only when running locally. Az Azure-ban a Function apps szolgáltatásban a függvények letiltása a Azure Functionsben című cikkben ismertetett lépéseket követve letilthatja az egyes függvényeket, és nem használhatja ezt a beállítást.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

Az összes függvény időtúllépési időtartamát jelzi.Indicates the timeout duration for all functions. A TimeSpan karakterlánc-formátumát követi.It follows the timespan string format. A kiszolgáló nélküli fogyasztási csomag esetében az érvényes tartomány 1 másodperc és 10 perc között van, az alapértelmezett érték pedig 5 perc.In a serverless Consumption plan, the valid range is from 1 second to 10 minutes, and the default value is 5 minutes.
A dedikált (App Service) csomagban nincs általános korlát, és az alapértelmezett érték a futásidejű verziótól függ:In a Dedicated (App Service) plan, there is no overall limit, and the default depends on the runtime version:

  • 1. x verzió: az alapértelmezett érték Null, amely nem jelez időtúllépést.Version 1.x: the default is null, which indicates no timeout.
  • 2. x verzió: az alapértelmezett érték 30 perc.Version 2.x: the default value is 30 minutes. A érték -1 nem kötött végrehajtást jelez.A value of -1 indicates unbounded execution.
{
    "functionTimeout": "00:05:00"
}

healthMonitorhealthMonitor

A gazdagép állapotának figyelésérevonatkozó konfigurációs beállítások.Configuration settings for Host health monitor.

{
    "healthMonitor": {
        "enabled": true,
        "healthCheckInterval": "00:00:10",
        "healthCheckWindow": "00:02:00",
        "healthCheckThreshold": 6,
        "counterThreshold": 0.80
    }
}
TulajdonságProperty AlapértelmezettDefault LeírásDescription
enabledenabled truetrue Megadja, hogy engedélyezve van-e a szolgáltatás.Specifies whether the feature is enabled.
healthCheckIntervalhealthCheckInterval 10 másodperc10 seconds Az időszakos háttér állapotának ellenőrzése közötti időtartam.The time interval between the periodic background health checks.
healthCheckWindowhealthCheckWindow 2 perc2 minutes A healthCheckThreshold beállítással együtt használt csúszó Time-ablak.A sliding time window used in conjunction with the healthCheckThreshold setting.
healthCheckThresholdhealthCheckThreshold 66 Az állapot-ellenőrzések maximális száma a gazdagép újraindítása előtt.Maximum number of times the health check can fail before a host recycle is initiated.
counterThresholdcounterThreshold 0,800.80 Az a küszöbérték, amelynél a teljesítményszámláló a nem megfelelő állapotot veszi figyelembe.The threshold at which a performance counter will be considered unhealthy.

httphttp

A konfigurációs beállítások a http- Eseményindítók és-kötések szolgáltatásban találhatók.Configuration settings can be found in http triggers and bindings.

{
    "http": {
        "routePrefix": "api",
        "maxOutstandingRequests": 200,
        "maxConcurrentRequests": 100,
        "dynamicThrottlesEnabled": true
    }
}
TulajdonságProperty AlapértelmezettDefault LeírásDescription
routePrefixroutePrefix apiapi Az útválasztási előtagot, amely az összes útvonal vonatkozik.The route prefix that applies to all routes. Üres karakterlánc segítségével távolítsa el az alapértelmezett előtag.Use an empty string to remove the default prefix.
maxOutstandingRequestsmaxOutstandingRequests 200*200* Egy adott időpontban tartott szálankénti függőben lévő kérelmek maximális száma.The maximum number of outstanding requests that are held at any given time. Ez a korlátozás kérelmek várólistára kerülnek, de nem kezdték végrehajtása, valamint bármely, a folyamat-végrehajtást tartalmaz.This limit includes requests that are queued but have not started executing, as well as any in progress executions. Minden olyan bejövő kérések át a korlátot 429 "Túlságosan elfoglalt" választ a rendszer elutasítja.Any incoming requests over this limit are rejected with a 429 "Too Busy" response. Amely lehetővé teszi, hogy a hívók időalapú újrapróbálkozási stratégiák használatát tervezni, és vezérelheti a kérések maximális késéseket is segít.That allows callers to employ time-based retry strategies, and also helps you to control maximum request latencies. Ez csak vezérli, üzenetsor-kezelési, amely a gazdagép szkript végrehajtási útvonalát belül történik.This only controls queuing that occurs within the script host execution path. Más várólisták, például az ASP.NET-kérelmek várólistája továbbra is lesz érvényben, és ez a beállítás nem befolyásolja.Other queues such as the ASP.NET request queue will still be in effect and unaffected by this setting. *Az alapértelmezett verzió 1.x korlátlan streameken működő (-1).*The default for version 1.x is unbounded (-1). Az alapértelmezett verzió használatalapú 2.x 200.The default for version 2.x in a consumption plan is 200. Az alapértelmezett verzió 2.x egy dedikált csomagban korlátlan streameken működő (-1).The default for version 2.x in a dedicated plan is unbounded (-1).
maxConcurrentRequestsmaxConcurrentRequests 100*100* Http-függvények, amelyek végrehajtható párhuzamosan maximális számát.The maximum number of http functions that will be executed in parallel. Ez lehetővé teszi a vezérlő egyidejűséget, amelyek segíthetnek az erőforrás-felhasználás kezelése.This allows you to control concurrency, which can help manage resource utilization. Előfordulhat például, hogy egy http-függvény, amely sok rendszererőforrást (memória / / processzorfoglalatok) használja úgy, hogy ha egyidejűség túl magas problémákat okoz.For example, you might have an http function that uses a lot of system resources (memory/cpu/sockets) such that it causes issues when concurrency is too high. Vagy előfordulhat, hogy egy függvényt, amely lehetővé teszi a kimenő kérelmeket egy külső szolgáltatás, és ezeket a hívások sebessége korlátozott kell.Or you might have a function that makes outbound requests to a third party service, and those calls need to be rate limited. Ezekben az esetekben alkalmazása egy késleltetési ide segítségével.In these cases, applying a throttle here can help. *Az alapértelmezett verzió 1.x korlátlan streameken működő (-1).*The default for version 1.x is unbounded (-1). Az alapértelmezett használatalapú 2.x verzió pedig a 100.The default for version 2.x in a consumption plan is 100. Az alapértelmezett verzió 2.x egy dedikált csomagban korlátlan streameken működő (-1).The default for version 2.x in a dedicated plan is unbounded (-1).
dynamicThrottlesEnableddynamicThrottlesEnabled Igaz*true* Ha engedélyezve van, ez a beállítás megadja a kérelemfeldolgozási folyamatba, rendszeres időközönként ellenőrizze a rendszerteljesítményt számlálók, például a kapcsolatokat/szálak/folyamatok/memória/cpu/stb., és ha ezek a számlálók bármelyike egy beépített magas meghaladja a küszöbértéket (80 %), a kérelmek lesz-e. elutasított 429 "Túlságosan elfoglalt" választ, mindaddig, amíg a számláló térjen vissza a normális üzemi szint.When enabled, this setting causes the request processing pipeline to periodically check system performance counters like connections/threads/processes/memory/cpu/etc. and if any of those counters are over a built-in high threshold (80%), requests will be rejected with a 429 "Too Busy" response until the counter(s) return to normal levels. *Az alapértelmezett verzió 1.x értéke hamis.*The default for version 1.x is false. Az alapértelmezett verzió használatalapú 2.x értéke igaz.The default for version 2.x in a consumption plan is true. Az alapértelmezett verzió egy dedikált csomagban 2.x értéke hamis.The default for version 2.x in a dedicated plan is false.

naplózáslogging

A Function alkalmazás naplózási viselkedését szabályozza, beleértve a Application Insightst is.Controls the logging behaviors of the function app, including Application Insights.

"logging": {
    "fileLoggingMode": "debugOnly",
    "logLevel": {
      "Function.MyFunction": "Information",
      "default": "None"
    },
    "console": {
        ...
    },
    "applicationInsights": {
        ...
    }
}
TulajdonságProperty AlapértelmezettDefault LeírásDescription
fileLoggingModefileLoggingMode debugOnlydebugOnly Meghatározza, hogy a fájlok naplózása milyen szintű legyen engedélyezve.Defines what level of file logging is enabled. A lehetőségek nevera always következőkdebugOnly:,.Options are never, always, debugOnly.
logLevellogLevel n/an/a Az alkalmazásban lévő függvények naplózási kategóriájának szűrését meghatározó objektum.Object that defines the log category filtering for functions in the app. A 2. x verzió a naplózási kategória szűrésének ASP.NET Core elrendezését követi.Version 2.x follows the ASP.NET Core layout for log category filtering. Ez lehetővé teszi adott függvények naplózásának szűrését.This lets you filter logging for specific functions. További információ: naplózási szűrés a ASP.net Core dokumentációjában.For more information, see Log filtering in the ASP.NET Core documentation.
consoleconsole n/an/a A console naplózási beállításokat.The console logging setting.
applicationInsightsapplicationInsights n/an/a A applicationInsights beállítás.The applicationInsights setting.

consoleconsole

Ez a beállítás a naplózásgyermeke.This setting is a child of logging. A konzol naplózását vezérli, ha nem hibakeresési módban van.It controls the console logging when not in debugging mode.

{
    "logging": {
    ...
        "console": {
          "isEnabled": "false"
        },
    ...
    }
}
TulajdonságProperty AlapértelmezettDefault LeírásDescription
isEnabledisEnabled falsefalse Engedélyezheti vagy letilthatja a konzol naplózását.Enables or disables console logging.

üzenetsorokqueues

A konfigurációs beállítások a Storage üzenetsor-eseményindítók és-kötések szolgáltatásban találhatók.Configuration settings can be found in Storage queue triggers and bindings.

sendGridsendGrid

A konfigurációs beállítás a SendGrid- Eseményindítók és-kötésekszolgáltatásban található.Configuration setting can be found in SendGrid triggers and bindings.

serviceBusserviceBus

A konfigurációs beállítás Service Bus eseményindítókban és kötésekbentalálható.Configuration setting can be found in Service Bus triggers and bindings.

Singletonsingleton

Az egyszeri zárolási viselkedés konfigurációs beállításai.Configuration settings for Singleton lock behavior. További információért lásd az egyszeri támogatással kapcsolatos GitHub-problémát.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"
    }
}
TulajdonságProperty AlapértelmezettDefault LeírásDescription
lockPeriodlockPeriod 00:00:1500:00:15 Az az időszak, ameddig a rendszer a működési szintet zárolja.The period that function level locks are taken for. A zárolások automatikus megújítása.The locks auto-renew.
listenerLockPeriodlistenerLockPeriod 00:01:0000:01:00 A figyelő zárolásának időtartama.The period that listener locks are taken for.
listenerLockRecoveryPollingIntervallistenerLockRecoveryPollingInterval 00:01:0000:01:00 A figyelő zárolásának helyreállításához használt időintervallum, ha a figyelő zárolása nem szerezhető be indításkor.The time interval used for listener lock recovery if a listener lock couldn't be acquired on startup.
lockAcquisitionTimeoutlockAcquisitionTimeout 00:01:0000:01:00 Az a maximális időtartam, ameddig a futtatókörnyezet megpróbál zárolást benyerni.The maximum amount of time the runtime will try to acquire a lock.
lockAcquisitionPollingIntervallockAcquisitionPollingInterval n/an/a A zárolási beszerzési kísérletek közötti időköz.The interval between lock acquisition attempts.

versionversion

A v2 futtatókörnyezetet megcélzó Function alkalmazás verziójának karakterláncát "version": "2.0" kötelező megadni.The version string "version": "2.0" is required for a function app that targets the v2 runtime.

watchDirectorieswatchDirectories

A módosításokat figyelő megosztott kód-címtárak készlete.A set of shared code directories that should be monitored for changes. Gondoskodik arról, hogy a könyvtárakban lévő kódok változásakor a függvények a módosításokat is felveszik.Ensures that when code in these directories is changed, the changes are picked up by your functions.

{
    "watchDirectories": [ "Shared" ]
}

managedDependencymanagedDependency

A felügyelt függőség egy előzetes verziójú funkció, amely jelenleg csak a PowerShell-alapú függvények esetében támogatott.Managed dependency is a preview feature that is currently only supported with PowerShell based functions. Lehetővé teszi a függőségek automatikus kezelését a szolgáltatással.It enables dependencies to be automatically managed by the service. Ha az enabled tulajdonság értéke TRUE (igaz), a rendszer feldolgozza a követelmények. psd1 fájlt.When the enabled property is set to true, the requirements.psd1 file will be processed. A függőségek akkor frissülnek, ha minden másodlagos verzió megjelent.Dependencies will be updated when any minor versions are released.

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

További lépésekNext steps