Azure İşlevleri 1.x için host.json başvurusu

host.json meta veri dosyası, bir işlev uygulaması örneğindeki tüm işlevleri etkileyen yapılandırma seçeneklerini içerir. Bu makalede, sürüm 1.x çalışma zamanı için kullanılabilen ayarlar listelenir. JSON şeması konumundadır http://json.schemastore.org/host.

Dekont

Bu makale Azure İşlevleri 1.x içindir. İşlevler 2.x ve sonraki sürümlerde host.json başvurusu için bkz. Azure İşlevleri 2.x için host.json başvurusu.

Diğer işlev uygulaması yapılandırma seçenekleri uygulama ayarlarınızda yönetilir.

Bazı host.json ayarları yalnızca local.settings.json dosyasında yerel olarak çalıştırılırken kullanılır.

Örnek host.json dosyası

Aşağıdaki örnek host.json dosyalarında tüm olası seçenekler belirtilmiş.

{
    "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" ],
}

Bu makalenin aşağıdaki bölümlerinde her üst düzey özellik açıklanmaktadır. Aksi belirtilmediği sürece tümü isteğe bağlıdır.

Toplayıcı

Uygulama Analizler ölçümlerini hesaplarken kaç işlev çağrısının toplanmış olduğunu belirtir.

{
    "aggregator": {
        "batchSize": 1000,
        "flushTimeout": "00:00:30"
    }
}
Özellik Varsayılan Tanım
batchSize 1000 Toplanmış en fazla istek sayısı.
flushTimeout 00:00:30 Top alınacak en uzun süre.

İki sınırdan ilki ulaşıldığında işlev çağrıları toplanır.

uygulama Analizler

Uygulama Analizler örnekleme özelliğini denetler.

{
    "applicationInsights": {
        "sampling": {
          "isEnabled": true,
          "maxTelemetryItemsPerSecond" : 5
        }
    }
}
Özellik Varsayılan Tanım
ısenabled true Örneklemeyi etkinleştirir veya devre dışı bırakır.
maxTelemetryItemsPerSecond 5 Örneklemenin başladığı eşik.

DocumentDB

Azure Cosmos DB tetikleyicisi ve bağlamaları için yapılandırma ayarları.

{
    "documentDB": {
        "connectionMode": "Gateway",
        "protocol": "Https",
        "leaseOptions": {
            "leasePrefix": "prefix1"
        }
    }
}
Özellik Varsayılan Tanım
GatewayMode Ağ Geçidi İşlev tarafından Azure Cosmos DB hizmetine bağlanırken kullanılan bağlantı modu. Seçenekler şunlardır: Direct ve Gateway
Protokol Https İşlev tarafından Azure Cosmos DB hizmetine bağlantı yapılırken kullanılan bağlantı protokolü. Her iki modun açıklaması için burayı okuyun
leasePrefix yok Bir uygulamadaki tüm işlevlerde kullanılacak kira ön eki.

durableTask

Dayanıklı İşlevler yapılandırma ayarları.

Dekont

Dayanıklı İşlevler tüm ana sürümleri Azure İşlevleri çalışma zamanının tüm sürümlerinde desteklenir. Ancak, host.json yapılandırmasının şeması, Azure İşlevleri çalışma zamanının sürümüne ve kullandığınız Dayanıklı İşlevler uzantı sürümüne bağlı olarak biraz farklıdır. Aşağıdaki örnekler Azure İşlevleri 2.0 ve 3.0 ile kullanıma yöneliktir. Her iki örnekte de, Azure İşlevleri 1.0 kullanıyorsanız, kullanılabilir ayarlar aynıdır, ancak host.json dosyasının "durableTask" bölümü "extensions" altında bir alan olarak değil host.json yapılandırmasının köküne girmelidir.

{
 "extensions": {
  "durableTask": {
    "hubName": "MyTaskHub",
    "storageProvider": {
      "connectionStringName": "AzureWebJobsStorage",
      "controlQueueBatchSize": 32,
      "controlQueueBufferThreshold": 256,
      "controlQueueVisibilityTimeout": "00:05:00",
      "maxQueuePollingInterval": "00:00:30",
      "partitionCount": 4,
      "trackingStoreConnectionStringName": "TrackingStorage",
      "trackingStoreNamePrefix": "DurableTask",
      "useLegacyPartitionManagement": true,
      "useTablePartitionManagement": false,
      "workItemQueueVisibilityTimeout": "00:05:00",
    },
    "tracing": {
      "traceInputsAndOutputs": false,
      "traceReplayEvents": false,
    },
    "notifications": {
      "eventGrid": {
        "topicEndpoint": "https://topic_name.westus2-1.eventgrid.azure.net/api/events",
        "keySettingName": "EventGridKey",
        "publishRetryCount": 3,
        "publishRetryInterval": "00:00:30",
        "publishEventTypes": [
          "Started",
          "Pending",
          "Failed",
          "Terminated"
        ]
      }
    },
    "maxConcurrentActivityFunctions": 10,
    "maxConcurrentOrchestratorFunctions": 10,
    "extendedSessionsEnabled": false,
    "extendedSessionIdleTimeoutInSeconds": 30,
    "useAppLease": true,
    "useGracefulShutdown": false,
    "maxEntityOperationBatchSize": 50,
    "storeInputsInOrchestrationHistory": false
  }
 }
}

Görev hub'ı adları bir harfle başlamalı ve yalnızca harf ve sayılardan oluşmalıdır. Belirtilmezse, bir işlev uygulamasının varsayılan görev hub'ı adı TestHubName'dir. Daha fazla bilgi için bkz . Görev hub'ları.

Özellik Varsayılan Tanım
hubName TestHubName (Dayanıklı İşlevler 1.x kullanıyorsanız DurableFunctionsHub) Alternatif görev hub'ı adları, aynı depolama arka ucu kullanıyor olsalar bile birden çok Dayanıklı İşlevler uygulamasını birbirinden yalıtmak için kullanılabilir.
controlQueueBatchSize 32 Bir kerede denetim kuyruğundan çekecek iletilerin sayısı.
controlQueueBufferThreshold Python için tüketim planı: 32
JavaScript ve C# için tüketim planı: 128
Ayrılmış/Premium plan: 256
Bir kerede bellekte arabelleğe alınabilen denetim kuyruğu iletilerinin sayısıdır. Bu noktada dağıtıcı, ek iletilerin sorgulanmasını beklemeden önce bekler.
partitionCount 4 Denetim kuyruğunun bölüm sayısı. 1 ile 16 arasında pozitif bir tamsayı olabilir.
controlQueueVisibilityTimeout 5 dakika Sıralanmamış denetim kuyruğu iletilerinin görünürlük zaman aşımı.
workItemQueueVisibilityTimeout 5 dakika Sıralanmamış iş öğesi kuyruk iletilerinin görünürlük zaman aşımı.
maxConcurrentActivityFunctions Tüketim planı: 10
Ayrılmış/Premium plan: Geçerli makinedeki işlemci sayısının 10 katını
Tek bir konak örneğinde eşzamanlı olarak işlenebilen en fazla etkinlik işlevi sayısı.
maxConcurrentOrchestratorFunctions Tüketim planı: 5
Ayrılmış/Premium plan: Geçerli makinedeki işlemci sayısının 10 katını
Tek bir konak örneğinde eşzamanlı olarak işlenebilen en fazla orchestrator işlevi sayısı.
maxQueuePollingInterval 30 saniye hh:mm:ss biçimindeki en yüksek denetim ve iş öğesi kuyruğu yoklama aralığı. Daha yüksek değerler daha yüksek ileti işleme gecikmelerine neden olabilir. Daha düşük değerler, artan depolama işlemleri nedeniyle daha yüksek depolama maliyetlerine neden olabilir.
connectionName (2.7.0 ve üzeri)
connectionStringName (2.x)
azure DepolamaBağlan ionStringName (1.x)
AzureWebJobsStorage Temel alınan Azure Depolama kaynaklarına nasıl bağlanıldığını belirten bir uygulama ayarının veya ayar koleksiyonunun adı. Tek bir uygulama ayarı sağlandığında, bu bir Azure Depolama bağlantı dizesi olmalıdır.
trackingStore Bağlan ionName (2.7.0 ve üzeri)
trackingStore Bağlan ionStringName
Geçmiş ve Örnekler tablolarına nasıl bağlanıldığını belirten bir uygulama ayarının veya ayar koleksiyonunun adı. Tek bir uygulama ayarı sağlandığında, bu bir Azure Depolama bağlantı dizesi olmalıdır. Belirtilmezse, connectionStringName (Dayanıklı 2.x) veya azureStorageConnectionStringName (Dayanıklı 1.x) bağlantısı kullanılır.
trackingStoreNamePrefix Belirtildiğinde trackingStoreConnectionStringName Geçmiş ve Örnekler tabloları için kullanılacak ön ek. Ayarlanmadıysa, varsayılan ön ek değeri olur DurableTask. Belirtilmezse trackingStoreConnectionStringName , Geçmiş ve Örnekler tabloları ön ek olarak değerini kullanır hubName ve için trackingStoreNamePrefix herhangi bir ayar yoksayılır.
traceInputsAndOutputs false İşlev çağrılarının girişlerinin ve çıkışlarının izlenip izlenmeyeceğini gösteren bir değer. İşlev yürütme olaylarını izlerken varsayılan davranış, işlev çağrıları için serileştirilmiş girişlere ve çıkışlara bayt sayısını eklemektir. Bu davranış, günlükleri şişirmeden veya yanlışlıkla hassas bilgileri açığa çıkarmadan girişlerin ve çıkışların nasıl göründüğü hakkında en az bilgi sağlar. Bu özelliğin true olarak ayarlanması, varsayılan işlev günlüğünün işlev girişlerinin ve çıkışlarının tüm içeriğini günlüğe kaydetmesine neden olur.
traceReplayEvents false Application Analizler'a orchestration replay olaylarının yazılıp yazılmayacağını gösteren değer.
eventGridTopicEndpoint Azure Event Grid özel konu uç noktasının URL'si. Bu özellik ayarlandığında, düzenleme yaşam döngüsü bildirim olayları bu uç noktada yayımlanır. Bu özellik, Uygulama Ayarlar çözümlemesini destekler.
eventGridKeySettingName konumundaki EventGridTopicEndpointAzure Event Grid özel konusuyla kimlik doğrulaması için kullanılan anahtarı içeren uygulama ayarının adı.
eventGridPublishRetryCount 0 Event Grid Konusu'na yayımlama başarısız olursa yeniden deneme sayısı.
eventGridPublishRetryInterval 5 dakika Event Grid yeniden deneme aralığını hh:mm:ss biçiminde yayımlar .
eventGridPublishEventTypes Event Grid'de yayımlayacak olay türlerinin listesi. Belirtilmezse, tüm olay türleri yayımlanır. İzin verilen değerler , Started, Completed, Failed. Terminated
useAppLease true olarak trueayarlandığında, uygulamalar görev hub'ı iletilerini işlemeden önce uygulama düzeyinde blob kirası alma gerektirir. Daha fazla bilgi için olağanüstü durum kurtarma ve coğrafi dağıtım belgelerine bakın. v2.3.0'dan itibaren kullanılabilir.
useLegacyPartitionManagement false olarak falseayarlandığında, ölçeği genişletirken yinelenen işlev yürütme olasılığını azaltan bir bölüm yönetimi algoritması kullanır. v2.3.0'dan itibaren kullanılabilir.
useTablePartitionManagement false olarak trueayarlandığında, Azure Depolama V2 hesaplarının maliyetlerini azaltmak için tasarlanmış bir bölüm yönetimi algoritması kullanır. v2.10.0'dan itibaren kullanılabilir. Bu özellik şu anda önizleme aşamasındadır ve tüketim planıyla henüz uyumlu değildir.
useGracefulShutdown false (Önizleme) Konak kapatma işlemlerinin işlem içi işlev yürütmelerinde başarısız olma olasılığını azaltmak için düzgün bir şekilde kapatmayı etkinleştirin.
maxEntityOperationBatchSize(2.6.1) Tüketim planı: 50
Ayrılmış/Premium plan: 5000
Toplu iş olarak işlenen varlık işlemlerinin en fazla sayısı. 1 olarak ayarlanırsa, toplu işlem devre dışı bırakılır ve her işlem iletisi ayrı bir işlev çağrısıyla işlenir.
storeInputsInOrchestrationHistory false olarak trueayarlandığında Dayanıklı Görev Çerçevesi'ne geçmiş tablosundaki etkinlik girişlerini kaydetmesini söyler. Bu, düzenleme geçmişini sorgularken etkinlik işlevi girişlerinin görüntülenmesini sağlar.

Bu ayarların çoğu performansı iyileştirmeye yöneliktir. Daha fazla bilgi için bkz . Performans ve ölçeklendirme.

eventHub

Olay Hub'ı tetikleyicileri ve bağlamaları için yapılandırma ayarları.

işlevleri

İş konağı tarafından çalıştırılır işlevlerin listesi. Boş bir dizi, tüm işlevleri çalıştırma anlamına gelir. Yalnızca yerel olarak çalıştırılırken kullanılmak üzere tasarlanmıştır. Azure'daki işlev uygulamalarında, bu ayarı kullanmak yerine belirli işlevleri devre dışı bırakmak için Azure İşlevleri işlevleri devre dışı bırakma bölümünde yer alan adımları izlemeniz gerekir.

{
    "functions": [ "QueueProcessor", "GitHubWebHook" ]
}

functionTimeout

Tüm işlevler için zaman aşımı süresini gösterir. Sunucusuz Tüketim planında geçerli aralık 1 saniye ile 10 dakika arasındadır ve varsayılan değer 5 dakikadır. App Service planında genel bir sınır yoktur ve varsayılan değer null olur ve bu da zaman aşımı olmadığını gösterir.

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

healthMonitor

Konak sistem durumu izleyicisi için yapılandırma ayarları.

{
    "healthMonitor": {
        "enabled": true,
        "healthCheckInterval": "00:00:10",
        "healthCheckWindow": "00:02:00",
        "healthCheckThreshold": 6,
        "counterThreshold": 0.80
    }
}
Özellik Varsayılan Tanım
enabled true Özelliğin etkinleştirilip etkinleştirilmediğini belirtir.
healthCheckInterval 10 saniye Düzenli arka plan sistem durumu denetimleri arasındaki zaman aralığı.
healthCheckWindow 2 dakika Ayar ile birlikte kullanılan kayan healthCheckThreshold zaman penceresi.
healthCheckThreshold 6 Konak geri dönüşümü başlatılmadan önce sistem durumu denetiminin başarısız olabileceği en fazla sayı.
counterThreshold 0.80 Performans sayacının iyi durumda olmayan olarak kabul edileceği eşik.

http

Http tetikleyicileri ve bağlamaları için yapılandırma ayarları.

{
    "http": {
        "routePrefix": "api",
        "maxOutstandingRequests": 200,
        "maxConcurrentRequests": 100,
        "dynamicThrottlesEnabled": true
    }
}
Özellik Varsayılan Tanım
dynamicThrottlesEnabled false Bu ayar etkinleştirildiğinde, istek işleme işlem hattının bağlantılar/iş parçacıkları/işlemler/bellek/cpu/vb. gibi sistem performans sayaçlarını düzenli aralıklarla denetlemesine neden olur ve bu sayaçlardan herhangi biri yerleşik yüksek eşiğin (%80) üzerindeyse, sayaçlar normal düzeylere dönene kadar istekler 429 "Çok Meşgul" yanıtıyla reddedilir.
maxConcurrentRequests ilişkisiz (-1) Paralel olarak yürütülecek EN FAZLA HTTP işlevi sayısı. Eşzamanlılığı denetlemenize olanak tanır ve bu da kaynak kullanımını denetlemeye yardımcı olabilir. Örneğin, eşzamanlılık çok yüksek olduğunda sorunlara neden olacak şekilde çok fazla sistem kaynağı (bellek/cpu/yuva) kullanan bir HTTP işlevine sahip olabilirsiniz. Veya üçüncü taraf bir hizmete giden istekler yapan bir işleviniz olabilir ve bu çağrıların hız sınırlaması olması gerekir. Böyle durumlarda burada kısıtlama uygulamak yararlı olabilir.
maxOutstandingRequests ilişkisiz (-1) Herhangi bir zamanda tutulan bekleyen istek sayısı üst sınırı. Bu sınır kuyruğa alınmış ancak yürütülmeye başlamamış istekleri ve devam eden yürütmeleri içerir. Bu sınırı aşan tüm gelen istekler 429 "Çok Meşgul" yanıtıyla reddedilir. Bu, çağıranların zamana dayalı yeniden deneme stratejilerini kullanmasına olanak tanır ve ayrıca maksimum istek gecikme sürelerini denetlemenize yardımcı olur. Bu yalnızca betik ana bilgisayar yürütme yolunda gerçekleşen kuyruğa alma işlemini denetler. ASP.NET istek kuyruğu gibi diğer kuyruklar çalışmayan devam eder ve bu ayardan etkilenmez.
routePrefix api Tüm yollar için geçerli olan yol ön eki. Varsayılan ön eki kaldırmak için boş bir dize kullanın.

kimlik

İş konağı için benzersiz kimlik. Kısa çizgilerin kaldırıldığı küçük harf GUID'i olabilir. Yerel olarak çalıştırılırken gereklidir. Azure'da çalışırken kimlik değeri ayarlamamanızı öneririz. Atlandığında id Azure'da otomatik olarak bir kimlik oluşturulur.

Bir Depolama hesabını birden çok işlev uygulamasında paylaşıyorsanız, her işlev uygulamasının farklı idolduğundan emin olun. Özelliğini atlayabilir id veya her işlev uygulamasının id değerlerini farklı bir değere el ile ayarlayabilirsiniz. Zamanlayıcı tetikleyicisi, bir işlev uygulamasının ölçeğini birden çok örneğe genişlettiğinde yalnızca bir zamanlayıcı örneği olmasını sağlamak için bir depolama kilidi kullanır. İki işlev uygulaması aynı id öğeyi paylaşıyorsa ve her biri bir zamanlayıcı tetikleyicisi kullanıyorsa, yalnızca bir zamanlayıcı çalışır.

{
    "id": "9f4ea53c5136457d883d685e57164f08"
}

Günlükçü

ILogger nesnesi veya context.log tarafından yazılan günlükler için filtrelemeyi denetler.

{
    "logger": {
        "categoryFilter": {
            "defaultLevel": "Information",
            "categoryLevels": {
                "Host": "Error",
                "Function": "Error",
                "Host.Aggregator": "Information"
            }
        }
    }
}
Özellik Varsayılan Tanım
categoryFilter yok Kategoriye göre filtrelemeyi belirtir
defaultLevel Bilgiler Dizide categoryLevels belirtilmeyen kategoriler için bu düzeyde ve üzeri günlükleri Uygulama Analizler'ne gönderin.
categoryLevels yok Her kategori için Uygulama Analizler gönderilecek en düşük günlük düzeyini belirten bir kategori dizisi. Burada belirtilen kategori, aynı değerle başlayan tüm kategorileri denetler ve daha uzun değerler önceliklidir. Yukarıdaki örnek host.json dosyasında, "Host.Aggregator" ile başlayan tüm kategoriler düzeyinde Information günlüğe kaydedilir. "Host.Executor" gibi "Host" ile başlayan diğer tüm kategoriler düzeyinde Error günlüğe kaydedilir.

kuyruklar

Depolama kuyruğu tetikleyicileri ve bağlamaları için yapılandırma ayarları.

{
    "queues": {
      "maxPollingInterval": 2000,
      "visibilityTimeout" : "00:00:30",
      "batchSize": 16,
      "maxDequeueCount": 5,
      "newBatchThreshold": 8
    }
}
Özellik Varsayılan Tanım
maxPollingInterval 60000 Kuyruk yoklamaları arasındaki milisaniye cinsinden maksimum aralık.
visibilityTimeout 0 bir iletinin işlenmesi başarısız olduğunda yeniden denemeler arasındaki zaman aralığı.
batchSize 16 İşlevler çalışma zamanının aynı anda alıp paralel olarak işlediği kuyruk iletilerinin sayısı. İşlenen sayı öğesine indiğinde newBatchThresholdçalışma zamanı başka bir toplu iş alır ve bu iletileri işlemeye başlar. Bu nedenle, işlev başına işlenen en fazla eşzamanlı ileti sayısı artı newBatchThresholdolurbatchSize. Bu sınır, kuyrukla tetiklenen her işlev için ayrı ayrı uygulanır.

Bir kuyruğa alınan iletiler için paralel yürütmeyi önlemek istiyorsanız, 1 olarak ayarlayabilirsiniz batchSize . Ancak bu ayar, işlev uygulamanız tek bir sanal makinede (VM) çalıştığı sürece eşzamanlılığı ortadan kaldırır. İşlev uygulamasının ölçeği birden çok VM'ye genişletilirse, her VM kuyrukla tetiklenen her işlevin bir örneğini çalıştırabilir.

batchSize Maksimum değer 32'dir.
maxDequeueCount 5 İletiyi zehirli kuyruğa taşımadan önce işlemeyi deneme sayısı.
newBatchThreshold batchSize/2 Eşzamanlı olarak işlenen ileti sayısı bu sayıya inerse çalışma zamanı başka bir toplu iş alır.

SendGrid

SendGrind çıkış bağlaması için yapılandırma ayarı

{
    "sendGrid": {
        "from": "Contoso Group <admin@contoso.com>"
    }
}    
Özellik Varsayılan Tanım
kaynak yok Tüm işlevlerde gönderenin e-posta adresi.

serviceBus

Service Bus tetikleyicileri ve bağlamaları için yapılandırma ayarı.

{ 
    "serviceBus": {
      "maxConcurrentCalls": 16,
      "prefetchCount": 100,
      "autoRenewTimeout": "00:05:00",
      "autoComplete": true
    }
}
Özellik Varsayılan Tanım
Maxconcurrentcalls 16 İleti pompasının başlatması gereken geri çağırmaya yönelik en fazla eşzamanlı çağrı sayısı. varsayılan olarak İşlevler çalışma zamanı birden çok iletiyi eşzamanlı olarak işler. Çalışma zamanını tek seferde yalnızca tek bir kuyruk veya konu iletisini işlemeye yönlendirmek için 1 olarak ayarlayın maxConcurrentCalls .
prefetchCount yok Temel alınan ServiceBusReceiver tarafından kullanılacak varsayılan PrefetchCount.
autoRenewTimeout 00:05:00 İleti kilidinin otomatik olarak yenileneceği en uzun süre.
autoComplete true True olduğunda, tetikleyici işlemin başarıyla yürütülmesinde ileti işlemeyi otomatik olarak tamamlar. False olduğunda, geri dönmeden önce iletiyi tamamlamak işlevin sorumluluğundadır.

Singleton

Tekil kilit davranışı için yapılandırma ayarları. Daha fazla bilgi için bkz . Tekil destek hakkında GitHub sorunu.

{
    "singleton": {
      "lockPeriod": "00:00:15",
      "listenerLockPeriod": "00:01:00",
      "listenerLockRecoveryPollingInterval": "00:01:00",
      "lockAcquisitionTimeout": "00:01:00",
      "lockAcquisitionPollingInterval": "00:00:03"
    }
}
Özellik Varsayılan Tanım
lockPeriod 00:00:15 İşlev düzeyi kilitlerinin alındığı süre. Otomatik yenilemeyi kilitler.
dinleyiciLockPeriod 00:01:00 Dinleyici kilitlerinin alındığı süre.
listenerLockRecoveryPollingInterval 00:01:00 Başlangıçta bir dinleyici kilidi alınamadıysa dinleyici kilidi kurtarma için kullanılan zaman aralığı.
lockAcquisitionTimeout 00:01:00 Çalışma zamanının kilit almaya çalıştığı maksimum süre.
lockAcquisitionPollingInterval yok Kilit alma girişimleri arasındaki aralık.

Izleme

Sürüm 1.x

Nesne TraceWriter kullanarak oluşturduğunuz günlükler için yapılandırma ayarları. Daha fazla bilgi edinmek için bkz. [C# Günlüğü].

{
    "tracing": {
      "consoleLevel": "verbose",
      "fileLoggingMode": "debugOnly"
    }
}
Özellik Varsayılan Tanım
consoleLevel Bilgi Konsol günlüğü için izleme düzeyi. Seçenekler şunlardır: off, error, warning, infove verbose.
fileLoggingMode debugOnly Dosya günlüğü için izleme düzeyi. Seçenekler: never, always, debugOnly.

watchDirectories

Değişiklikler için izlenmesi gereken paylaşılan kod dizinleri kümesi. Bu dizinlerdeki kod değiştirildiğinde değişikliklerin işlevleriniz tarafından alınmasını sağlar.

{
    "watchDirectories": [ "Shared" ]
}

Sonraki adımlar