referência host.json para funções Azure 2.x e mais tardehost.json reference for Azure Functions 2.x and later

O ficheiro de metadados host.json contém opções de configuração global que afetam todas as funções para uma aplicação de função.The host.json metadata file contains global configuration options that affect all functions for a function app. Este artigo lista as definições disponíveis a partir da versão 2.x do tempo de funcionamento das Funções Azure.This article lists the settings that are available starting with version 2.x of the Azure Functions runtime.

Nota

Este artigo é para funções Azure 2.x e versões posteriores.This article is for Azure Functions 2.x and later versions. Para uma referência do host.json nas funções 1.x, consulte a referência host.json para as funções Azure 1.x.For a reference of host.json in Functions 1.x, see host.json reference for Azure Functions 1.x.

Outras opções de configuração de aplicações de função são geridas nas definições da sua aplicação (para aplicações implementadas) ou no ficheiro local.settings.json (para desenvolvimento local).Other function app configuration options are managed in your app settings (for deployed apps) or your local.settings.json file (for local development).

As configurações em host.json relacionadas com encadernações são aplicadas igualmente a cada função na aplicação de função.Configurations in host.json related to bindings are applied equally to each function in the function app.

Arquivo host.json da amostraSample host.json file

O ficheiro host.json da seguinte amostra para a versão 2.x+ tem todas as opções possíveis especificadas (excluindo quaisquer que sejam apenas para uso interno).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
    },
    "singleton": {
      "lockPeriod": "00:00:15",
      "listenerLockPeriod": "00:01:00",
      "listenerLockRecoveryPollingInterval": "00:01:00",
      "lockAcquisitionTimeout": "00:01:00",
      "lockAcquisitionPollingInterval": "00:00:03"
    },
    "watchDirectories": [ "Shared", "Test" ]
}

As seguintes secções deste artigo explicam cada propriedade de alto nível.The following sections of this article explain each top-level property. Todos são opcionais, salvo indicação em contrário.All are optional unless otherwise indicated.

agregadoraggregator

Especifica quantas invocações de função são agregadas ao calcular métricas para Application insights.Specifies how many function invocations are aggregated when calculating metrics for Application Insights.

{
    "aggregator": {
        "batchSize": 1000,
        "flushTimeout": "00:00:30"
    }
}
PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
batchSizebatchSize 10001000 Número máximo de solicitações a serem agregadas.Maximum number of requests to aggregate.
flushTimeoutflushTimeout 00:00:3000:00:30 Período de tempo máximo para agregação.Maximum time period to aggregate.

As invocações de função são agregadas quando o primeiro dos dois limites são atingidos.Function invocations are aggregated when the first of the two limits are reached.

applicationInsightsapplicationInsights

Esta definição é uma criança de exploração madeireira.This setting is a child of logging.

Controla as opções de Insights de Aplicação, incluindo opções de amostragem.Controls options for Application Insights, including sampling options.

Para obter a estrutura json completa, consulte o ficheiro host.jsonexemplo anterior .For the complete JSON structure, see the earlier example host.json file.

Nota

A amostragem de registo pode fazer com que algumas execuções não apareçam na lâmina do monitor Deinsights de Aplicação.Log sampling may cause some executions to not show up in the Application Insights monitor blade. Para evitar a amostragem de registo, adicione samplingExcludedTypes: "Request" ao valor applicationInsights.To avoid log sampling, add samplingExcludedTypes: "Request" to the applicationInsights value.

PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
amostragemDefiniçõessamplingSettings n/dn/a Consulte applicationInsights.samplingSettings.See applicationInsights.samplingSettings.
amostrasExcluiosTipos excluídossamplingExcludedTypes nulonull Uma lista de tipos deslimitadas do cólon que não queres ser amostradas.A semi-colon delimited list of types that you don't want to be sampled. Os tipos reconhecidos são: Dependência, Evento, Exceção, PageView, Request, Trace.Recognized types are: Dependency, Event, Exception, PageView, Request, Trace. Todas as instâncias dos tipos especificados são transmitidas; os tipos que não estão especificados são amostrados.All instances of the specified types are transmitted; the types that aren't specified are sampled.
amostragemIncluídossamplingIncludedTypes nulonull Uma lista de tipos deslimitada seletiva que pretende ser amostrada; uma lista vazia implica todos os tipos.A semi-colon delimited list of types that you want to be sampled; an empty list implies all types. Tipo listado em tipos de substituição samplingExcludedTypes listados aqui.Type listed in samplingExcludedTypes override types listed here. Os tipos reconhecidos são: Dependência, Evento, Exceção, PageView, Request, Trace.Recognized types are: Dependency, Event, Exception, PageView, Request, Trace. Todas as instâncias dos tipos especificados são transmitidas; os tipos que não estão especificados são amostrados.All instances of the specified types are transmitted; the types that aren't specified are sampled.
enableLiveMetricsenableLiveMetrics truetrue Permite a recolha de métricas ao vivo.Enables live metrics collection.
enableDependencyTrackingenableDependencyTracking truetrue Permite o rastreio da dependência.Enables dependency tracking.
enablePerformanceCountersCollectionenablePerformanceCountersCollection truetrue Permite a coleção de contadores de desempenho kudu.Enables Kudu performance counters collection.
liveMetricsInicializaçãoDelayliveMetricsInitializationDelay 00:00:1500:00:15 Apenas para utilização interna.For internal use only.
httpAutoCollectionOptionshttpAutoCollectionOptions n/dn/a Consulte applicationInsights.httpAutoCollectionOptions.See applicationInsights.httpAutoCollectionOptions.
configuração instantâneasnapshotConfiguration n/dn/a Consulte applicationInsights.snapshotConfiguration.See applicationInsights.snapshotConfiguration.

aplicaInsights.samplingSettingsapplicationInsights.samplingSettings

PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
isEnabledisEnabled truetrue Permite ou desativa a amostragem.Enables or disables sampling.
maxTelemetryItemsPerSecondmaxTelemetryItemsPerSecond 2020 O número de alvos de artigos de telemetria registados por segundo em cada anfitrião do servidor.The target number of telemetry items logged per second on each server host. Se a sua aplicação for executado em muitos anfitriões, reduza este valor para permanecer dentro da sua taxa de tráfego geral.If your app runs on many hosts, reduce this value to remain within your overall target rate of traffic.
avaliaçãoIntervalevaluationInterval 01:00:0001:00:00 O intervalo em que a taxa atual de telemetria é reavaliada.The interval at which the current rate of telemetry is reevaluated. A avaliação é feita como uma média móvel.Evaluation is performed as a moving average. Talvez queira encurtar este intervalo se a sua telemetria for suscetível de explosões repentinas.You might want to shorten this interval if your telemetry is liable to sudden bursts.
inicialSamplingPercentageinitialSamplingPercentage 1.01.0 A percentagem inicial de amostragem aplicada no início do processo de amostragem para variar dinamicamente a percentagem.The initial sampling percentage applied at the start of the sampling process to dynamically vary the percentage. Não reduza o valor enquanto está a depurar.Don't reduce value while you're debugging.
amostragemPercentualIncreaseTimeoutsamplingPercentageIncreaseTimeout 00:00:0100:00:01 Quando o valor percentual de amostragem muda, este imóvel determina quanto tempo depois os Insights de Aplicação são autorizados a aumentar a percentagem de amostragem novamente para capturar mais dados.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.
amostragemPercentageDiminuiTimeoutsamplingPercentageDecreaseTimeout 00:00:0100:00:01 Quando o valor percentual de amostragem muda, esta propriedade determina quanto tempo depois os Insights de Aplicação são autorizados a reduzir novamente a percentagem de amostragem para capturar menos dados.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 Como a percentagem de amostragem varia, este imóvel determina a percentagem mínima de amostragem permitida.As sampling percentage varies, this property determines the minimum allowed sampling percentage.
maxSamplingPercentagemaxSamplingPercentage 0.10.1 Como a percentagem de amostragem varia, este imóvel determina a percentagem máxima permitida de amostragem.As sampling percentage varies, this property determines the maximum allowed sampling percentage.
movingAverageRatiomovingAverageRatio 1.01.0 No cálculo da média móvel, o peso atribuído ao valor mais recente.In the calculation of the moving average, the weight assigned to the most recent value. Use um valor igual ou inferior a 1.Use a value equal to or less than 1. Valores menores tornam o algoritmo menos reativo a mudanças repentinas.Smaller values make the algorithm less reactive to sudden changes.

aplicaçõesInsights.httpAutoCollectionOptionsapplicationInsights.httpAutoCollectionOptions

PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
enableHttpTriggerExtendedInfoCollectionenableHttpTriggerExtendedInfoCollection truetrue Permite ou desativa informações estendidas sobre pedidos http para os gatilhos HTTP: cabeçalhos de correlação de pedido de entrada, suporte de chaves multi-instrumentação, método HTTP, caminho e resposta.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 Permite ou desativa o suporte do protocolo de rastreio distribuído w3C (e liga o esquema de correlação do legado).Enables or disables support of W3C distributed tracing protocol (and turns on legacy correlation schema). Ativado por padrão se enableHttpTriggerExtendedInfoCollection for verdade.Enabled by default if enableHttpTriggerExtendedInfoCollection is true. Se enableHttpTriggerExtendedInfoCollection é falso, esta bandeira aplica-se apenas aos pedidos de saída, e não aos pedidos de entrada.If enableHttpTriggerExtendedInfoCollection is false, this flag applies to outgoing requests only, not incoming requests.
enableResponseHeaderInjectionenableResponseHeaderInjection truetrue Permite ou desativa a injeção de cabeçalhos de correlação multicomponentes em respostas.Enables or disables injection of multi-component correlation headers into responses. Permitir a injeção permite que os Insights de Aplicação construam um Mapa de Aplicação para quando várias teclas de instrumentação são usadas.Enabling injection allows Application Insights to construct an Application Map to when several instrumentation keys are used. Ativado por padrão se enableHttpTriggerExtendedInfoCollection for verdade.Enabled by default if enableHttpTriggerExtendedInfoCollection is true. Esta definição não se aplica se enableHttpTriggerExtendedInfoCollection for falsa.This setting doesn't apply if enableHttpTriggerExtendedInfoCollection is false.

aplicaInsights.snapshotConfigurationapplicationInsights.snapshotConfiguration

Para obter mais informações sobre instantâneos, consulte as imagens do Debug sobre exceções em aplicações .NET e problemas de Troubleshoot que permitem a aplicação Insights Snapshot Debugger ou visualização de instantâneos.For more information on snapshots, see Debug snapshots on exceptions in .NET apps and Troubleshoot problems enabling Application Insights Snapshot Debugger or viewing snapshots.

PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
agenteEndpointagentEndpoint nulonull O ponto final usado para ligar ao serviço Application Insights Snapshot Debugger.The endpoint used to connect to the Application Insights Snapshot Debugger service. Se nulidade, é utilizado um ponto final predefinido.If null, a default endpoint is used.
capturarSnapshotMemoryWeightcaptureSnapshotMemoryWeight 0.50.5 O peso dado ao tamanho da memória do processo atual ao verificar se há memória suficiente para tirar uma foto.The weight given to the current process memory size when checking if there's enough memory to take a snapshot. O valor esperado é de uma fração superior a 0 (0 < CaptureSnapshotMemoryWeight < 1).The expected value is a greater than 0 proper fraction (0 < CaptureSnapshotMemoryWeight < 1).
falhadoRequestLimitfailedRequestLimit 33 O limite do número de pedidos falhados para solicitar instantâneos antes de o processador de telemetria ser desativado.The limit on the number of failed requests to request snapshots before the telemetry processor is disabled.
handleUntrackedExcepshandleUntrackedExceptions truetrue Permite ou desativa o rastreio de exceções que não são rastreadas pela telemetria Application Insights.Enables or disables tracking of exceptions that aren't tracked by Application Insights telemetry.
isEnabledisEnabled truetrue Permite ou desativa a recolha de instantâneosEnables or disables snapshot collection
isEnabledInDeveloperModeisEnabledInDeveloperMode falsefalse Ativa ou desativa a recolha de instantâneos no modo de desenvolvimento.Enables or disables snapshot collection is enabled in developer mode.
isEnabledWhenProfilingisEnabledWhenProfiling truetrue Permite ou desativa a criação de instantâneos mesmo que o Profiler de Insights de Aplicação esteja a recolher uma sessão de perfis detalhadas.Enables or disables snapshot creation even if the Application Insights Profiler is collecting a detailed profiling session.
isExceptionSnappointsEnabledisExceptionSnappointsEnabled falsefalse Permite ou desativa a filtragem de exceções.Enables or disables filtering of exceptions.
isLowPrioritySnapshotUploaderisLowPrioritySnapshotUploader truetrue Determina se deve executar o processo SnapshotUploader abaixo da prioridade normal.Determines whether to run the SnapshotUploader process at below normal priority.
maximumCollectionPlanSizemaximumCollectionPlanSize 5050 O número máximo de problemas que podemos rastrear a qualquer momento num intervalo de um a 9999.The maximum number of problems that we can track at any time in a range from one to 9999.
máximoSnapshotsNecessáriosmaximumSnapshotsRequired 33 O número máximo de instantâneos recolhidos para um único problema, num intervalo de um a 999.The maximum number of snapshots collected for a single problem, in a range from one to 999. Um problema pode ser considerado como uma declaração individual de lançamento na sua aplicação.A problem may be thought of as an individual throw statement in your application. Uma vez que o número de instantâneos recolhidos para um problema atinge este valor, não serão recolhidos mais instantâneos para esse problema até que os contadores de problemas sejam reiniciados (ver problemCounterResetInterval) e o limite de thresholdForSnapshotting seja novamente atingido.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.
problemaCounterResetIntervalproblemCounterResetInterval 24:00:0024:00:00 Com que frequência repor os contadores de problemas num intervalo de um minuto a sete dias.How often to reset the problem counters in a range from one minute to seven days. Quando este intervalo é atingido, todas as contagens de problemas são redefinidas para zero.When this interval is reached, all problem counts are reset to zero. Os problemas existentes que já atingiram o limiar para fazer instantâneos, mas que ainda não geraram o número de instantâneos em maximumSnapshotsRequired, permanecem ativos.Existing problems that have already reached the threshold for doing snapshots, but haven't yet generated the number of snapshots in maximumSnapshotsRequired, remain active.
fornecerTelemetria AnonymousprovideAnonymousTelemetry truetrue Determina se deve enviar telemetria de uso anónimo e erro para a Microsoft.Determines whether to send anonymous usage and error telemetry to Microsoft. Esta telemetria pode ser usada se contactar a Microsoft para ajudar a resolver problemas com o Snapshot Debugger.This telemetry may be used if you contact Microsoft to help troubleshoot problems with the Snapshot Debugger. Também é usado para monitorizar os padrões de utilização.It is also used to monitor usage patterns.
reconectarIntervaladoreconnectInterval 00:15:0000:15:00 Quantas vezes nos reconectamos ao ponto final do Debugger Instantâneo.How often we reconnect to the Snapshot Debugger endpoint. O alcance permitido é de um minuto a um dia.Allowable range is one minute to one day.
shadowCopyFoldershadowCopyFolder nulonull Especifica a pasta a utilizar para copiar binários de cópia de sombras.Specifies the folder to use for shadow copying binaries. Se não for definido, as pastas especificadas pelas seguintes variáveis ambientais são experimentadas por ordem: 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 Se for verdade, apenas uma instância do SnapshotUploader irá recolher e carregar fotografias para várias aplicações que partilham a InstrumentationKey.If true, only one instance of SnapshotUploader will collect and upload snapshots for multiple apps that share the InstrumentationKey. Se for definido como falso, o SnapshotUploader será único para cada tuple (ProcessName, InstrumentationKey).If set to false, the SnapshotUploader will be unique for each (ProcessName, InstrumentationKey) tuple.
snapshotInLowPriorityThreadsnapshotInLowPriorityThread truetrue Determina se processa ou não instantâneos num fio prioritário de IO baixo.Determines whether or not to process snapshots in a low IO priority thread. Criar um instantâneo é uma operação rápida, mas, para fazer o upload de uma foto para o serviço Snapshot Debugger, deve primeiro ser escrito em disco como uma mini-lixeira.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. Isso acontece no processo SnapshotUploader.That happens in the SnapshotUploader process. Definir este valor como verdadeiro usa IO de baixa prioridade para escrever o minidump, que não vai competir com a sua aplicação de recursos.Setting this value to true uses low-priority IO to write the minidump, which won't compete with your application for resources. Definir este valor para falsas velocidades de criação de minidump em detrimento de abrandar a sua aplicação.Setting this value to false speeds up minidump creation at the expense of slowing down your application.
snapshotsPerDayLimitsnapshotsPerDayLimit 3030 O número máximo de instantâneos permitidos num dia (24 horas).The maximum number of snapshots allowed in one day (24 hours). Este limite também é aplicado no lado do serviço Application Insights.This limit is also enforced on the Application Insights service side. Os uploads são limitados a 50 por dia por aplicação (isto é, por chave de instrumentação).Uploads are rate limited to 50 per day per application (that is, per instrumentation key). Este valor ajuda a evitar a criação de instantâneos adicionais que eventualmente serão rejeitados durante o upload.This value helps prevent creating additional snapshots that will eventually be rejected during upload. Um valor de zero remove completamente o limite, o que não é recomendado.A value of zero removes the limit entirely, which isn't recommended.
snapshotsPerTenMinutesLimitsnapshotsPerTenMinutesLimit 11 O número máximo de instantâneos permitidos em 10 minutos.The maximum number of snapshots allowed in 10 minutes. Embora não exista um limite superior a este valor, tenha cuidado ao aumtá-lo nas cargas de trabalho de produção, pois pode afetar o desempenho da sua aplicação.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. Criar um instantâneo é rápido, mas criar uma mini-dump do instantâneo e carregá-lo para o serviço Snapshot Debugger é uma operação muito mais lenta que competirá com a sua aplicação de recursos (cpU e I/O).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 nulonull Especifica a pasta para escrever minidumps e ficheiros de registo de uploader.Specifies the folder to write minidumps and uploader log files. Se não estiver definido, então são utilizados depósitos de despejos %TEMP%..If not set, then %TEMP%\Dumps is used.
limiarForSnapshottingthresholdForSnapshotting 11 Quantas vezes a Application Insights precisa de ver uma exceção antes de pedir instantâneos.How many times Application Insights needs to see an exception before it asks for snapshots.
uploaderProxyuploaderProxy nulonull Substitui o servidor proxy utilizado no processo de uploader snapshot.Overrides the proxy server used in the Snapshot Uploader process. Pode ser necessário utilizar esta definição se a sua aplicação se ligar à internet através de um servidor proxy.You may need to use this setting if your application connects to the internet via a proxy server. O Snapshot Collector funciona dentro do processo da sua aplicação e utilizará as mesmas definições de procuração.The Snapshot Collector runs within your application's process and will use the same proxy settings. No entanto, o Uploader Snapshot funciona como um processo separado e poderá ser necessário configurar manualmente o servidor proxy.However, the Snapshot Uploader runs as a separate process and you may need to configure the proxy server manually. Se este valor for nulo, então o Snapshot Collector tentará detetar automaticamente o endereço do proxy examinando System.Net.WebRequest.DefaultWebProxy e transmitindo o valor para o Uploader snapshot.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. Se este valor não for nulo, então a deteção automática não é usada e o servidor proxy aqui especificado será utilizado no Uploader Snapshot.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

A configuração de configuração pode ser encontrada em gatilhos e encadernações Cosmos DB.Configuration setting can be found in Cosmos DB triggers and bindings.

tarefa duráveldurableTask

A definição de configuração pode ser encontrada em encadernações para funções duráveis.Configuration setting can be found in bindings for Durable Functions.

eventHubeventHub

As definições de configuração podem ser encontradas em gatilhos e encadernações do Event Hub.Configuration settings can be found in Event Hub triggers and bindings.

extensõesextensions

Propriedade que devolve um objeto que contém todas as configurações específicas de ligação, tais como http e eventHub.Property that returns an object that contains all of the binding-specific settings, such as http and eventHub.

extensãoBundleextensionBundle

Os pacotes de extensão permitem-lhe adicionar um conjunto compatível de extensões de ligação de funções à sua aplicação de função.Extension bundles let you add a compatible set of Functions binding extensions to your function app. Para saber mais, consulte pacotes de extensão para o desenvolvimento local.To learn more, see Extension bundles for local development.

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

As propriedades a seguir estão disponíveis no extensionBundle:The following properties are available in extensionBundle:

PropriedadeProperty DescriçãoDescription
IDid O namespace para pacotes de extensão do Microsoft Azure functions.The namespace for Microsoft Azure Functions extension bundles.
versãoversion A versão do pacote a ser instalado.The version of the bundle to install. O tempo de execução do Functions sempre escolhe a versão máxima permitida definida pelo intervalo de versão ou intervalo.The Functions runtime always picks the maximum permissible version defined by the version range or interval. O valor da versão acima permite todas as versões do pacote da 1.0.0 até, mas não incluindo 2.0.0.The version value above allows all bundle versions from 1.0.0 up to but not including 2.0.0. Para obter mais informações, consulte a notação de intervalo para especificar intervalos de versão.For more information, see the interval notation for specifying version ranges.

As versões do pacote são incrementadas como pacotes na alteração do pacote.Bundle versions increment as packages in the bundle change. As alterações de versão principal ocorrem quando os pacotes no pacote são incrementados por uma versão principal.Major version changes occur when packages in the bundle increment by a major version. As alterações de versão principais no pacote geralmente coincidem com uma alteração na versão principal do tempo de execução do functions.Major version changes in the bundle usually coincide with a change in the major version of the Functions runtime.

O conjunto atual de extensões instaladas pelo pacote padrão é enumerado neste arquivo Extensions. JSON.The current set of extensions installed by the default bundle is enumerated in this extensions.json file.

funçõesfunctions

Uma lista de funções que o anfitrião do emprego dirige.A list of functions that the job host runs. Uma matriz vazia significa executar todas as funções.An empty array means run all functions. Destinado a ser utilizado apenas quando se funciona localmente.Intended for use only when running locally. Nas aplicações de função em Azure, deve seguir os passos em Como desativar funções em Funções Azure para desativar funções específicas em vez de utilizar esta definição.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

Indica a duração do tempo de paragem para todas as funções.Indicates the timeout duration for all functions. Segue o formato de corda timepan.It follows the timespan string format. Num plano de consumo sem servidor, o intervalo válido é de 1 segundo a 10 minutos, e o valor predefinido é de 5 minutos.In a serverless Consumption plan, the valid range is from 1 second to 10 minutes, and the default value is 5 minutes.

No plano Premium, o intervalo válido é de 1 segundo a 60 minutos, e o valor predefinido é de 30 minutos.In the Premium plan, the valid range is from 1 second to 60 minutes, and the default value is 30 minutes.

Num plano dedicado (App Service), não existe um limite global, e o valor padrão é de 30 minutos.In a Dedicated (App Service) plan, there is no overall limit, and the default value is 30 minutes. Recomenda-se um valor de -1 uma execução não limitada, mas é recomendado manter um limite superior fixo.A value of -1 indicates unbounded execution, but keeping a fixed upper bound is recommended.

{
    "functionTimeout": "00:05:00"
}

healthMonitorhealthMonitor

Configurações de configuração para monitor de saúde anfitrião.Configuration settings for Host health monitor.

{
    "healthMonitor": {
        "enabled": true,
        "healthCheckInterval": "00:00:10",
        "healthCheckWindow": "00:02:00",
        "healthCheckThreshold": 6,
        "counterThreshold": 0.80
    }
}
PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
enabledenabled truetrue Especifica se a funcionalidade está ativada.Specifies whether the feature is enabled.
healthCheckIntervalhealthCheckInterval 10 segundos10 seconds O intervalo de tempo entre as verificações periódicas de saúde de fundo.The time interval between the periodic background health checks.
healthCheckWindowhealthCheckWindow 2 minutos2 minutes Uma janela de tempo deslizante utilizada em conjunto com a definição healthCheckThreshold.A sliding time window used in conjunction with the healthCheckThreshold setting.
healthCheckThresholdhealthCheckThreshold 66 Número máximo de vezes que o exame de saúde pode falhar antes de iniciar um ciclo de acolhimento.Maximum number of times the health check can fail before a host recycle is initiated.
contralimiarcounterThreshold 0.800.80 O limiar em que um contador de desempenho será considerado insalubre.The threshold at which a performance counter will be considered unhealthy.

httphttp

As definições de configuração podem ser encontradas em gatilhos e encadernações de http.Configuration settings can be found in http triggers and bindings.

exploração madeireiralogging

Controla os comportamentos de registo da aplicação de função, incluindo os Insights da Aplicação.Controls the logging behaviors of the function app, including Application Insights.

"logging": {
    "fileLoggingMode": "debugOnly"
    "logLevel": {
      "Function.MyFunction": "Information",
      "default": "None"
    },
    "console": {
        ...
    },
    "applicationInsights": {
        ...
    }
}
PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
fileLoggingModefileLoggingMode debugsódebugOnly Define o nível de registo de ficheiros ativado.Defines what level of file logging is enabled. As opções são never, always, debugOnly.Options are never, always, debugOnly.
logLevellogLevel n/dn/a Objeto que define a categoria de log filtrando funções na aplicação.Object that defines the log category filtering for functions in the app. Versões 2.x e, posteriormente, siga o layout ASP.NET Core para filtragem da categoria de log.Versions 2.x and later follow the ASP.NET Core layout for log category filtering. Esta definição permite filtrar o registo para funções específicas.This setting lets you filter logging for specific functions. Para mais informações, consulte a filtragem de Registo na documentação do Núcleo de ASP.NET.For more information, see Log filtering in the ASP.NET Core documentation.
consoleconsole n/dn/a A definição de registo da consola.The console logging setting.
applicationInsightsapplicationInsights n/dn/a A definição de applicationInsights.The applicationInsights setting.

consoleconsole

Esta definição é uma criança de exploração madeireira.This setting is a child of logging. Controla o registo da consola quando não está em modo de depuração.It controls the console logging when not in debugging mode.

{
    "logging": {
    ...
        "console": {
          "isEnabled": "false"
        },
    ...
    }
}
PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
isEnabledisEnabled falsefalse Permite ou desativa o registo da consola.Enables or disables console logging.

managedDependênciamanagedDependency

A dependência gerida é uma funcionalidade que atualmente é suportada apenas com funções baseadas na PowerShell.Managed dependency is a feature that is currently only supported with PowerShell based functions. Permite que as dependências sejam geridas automaticamente pelo serviço.It enables dependencies to be automatically managed by the service. Quando a propriedade enabled está definida para true, o ficheiro requirements.psd1 é processado.When the enabled property is set to true, the requirements.psd1 file is processed. As dependências são atualizadas quando quaisquer versões menores são lançadas.Dependencies are updated when any minor versions are released. Para mais informações, consulte a dependência gerida no artigo powerShell.For more information, see Managed dependency in the PowerShell article.

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

filasqueues

As definições de configuração podem ser encontradas nos gatilhos e encadernaçõesda fila de armazenamento.Configuration settings can be found in Storage queue triggers and bindings.

sendGridsendGrid

A definição de configuração pode ser encontrada nos gatilhos e encadernações sendGrid.Configuration setting can be found in SendGrid triggers and bindings.

serviçoBusserviceBus

A definição de configuração pode ser encontrada em gatilhos e encadernaçõesdo Ônibus de serviço .Configuration setting can be found in Service Bus triggers and bindings.

singletonsingleton

Definições de configuração para o comportamento de bloqueio de Singleton.Configuration settings for Singleton lock behavior. Para mais informações, consulte a questão do GitHub sobre o suporte singleton.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"
    }
}
PropriedadeProperty PredefiniçãoDefault DescriçãoDescription
lockPeriodlockPeriod 00:00:1500:00:15 O período para o período em que as fechaduras de nível de função são tomadas.The period that function level locks are taken for. As fechaduras renovam automaticamente.The locks auto-renew.
listenerLockPeriodlistenerLockPeriod 00:01:0000:01:00 O período para o que as fechaduras dos ouvintes são tomados.The period that listener locks are taken for.
listenerLockRecoveryPollingIntervallistenerLockRecoveryPollingInterval 00:01:0000:01:00 O intervalo de tempo utilizado para a recuperação do bloqueio do ouvinte se não fosse adquirido um bloqueio de ouvintes no arranque.The time interval used for listener lock recovery if a listener lock couldn't be acquired on startup.
lockAcquisitionTimeoutlockAcquisitionTimeout 00:01:0000:01:00 O tempo máximo de tempo que o tempo de execução tentará adquirir um cadeado.The maximum amount of time the runtime will try to acquire a lock.
lockAcquisitionPollingIntervallockAcquisitionPollingInterval n/dn/a O intervalo entre tentativas de aquisição de fechaduras.The interval between lock acquisition attempts.

versãoversion

Este valor indica a versão schema do host.json.This value indicates the schema version of host.json. A versão "version": "2.0" é necessária para uma aplicação de função que se direcione para o tempo de execução v2, ou uma versão posterior.The version string "version": "2.0" is required for a function app that targets the v2 runtime, or a later version. Não há mudanças de esquema son.json entre v2 e v3.There are no host.json schema changes between v2 and v3.

watchDirectorieswatchDirectories

Um conjunto de diretórios de código partilhados que devem ser monitorizados para alterações.A set of shared code directories that should be monitored for changes. Garante que quando o código nestas diretórios é alterado, as alterações são captadas pelas suas funções.Ensures that when code in these directories is changed, the changes are picked up by your functions.

{
    "watchDirectories": [ "Shared" ]
}

Passos SeguintesNext steps