我想测试我的azure函数使用Azure应用程序功能运行/测试模式,但它抛出'500内部服务器错误‘。我能够在我的本地环境中调试相同的代码,但是当在azure门户上触发相同的代码时,它就会失败,而没有任何正确的错误日志。

此Azure函数将从事件中心读取json格式的数据,并将其写入blob存储。我正在使用python开发azure函数。下面是代码:init.py
from typing import List
import logging
import os
import azure.functions as func
from azure.storage.blob import BlobClient
import datetime
import json
storage_connection_string = os.getenv('storage_connection_string_FromKeyVault')
container_name = os.getenv('storage_container_name_FromKeyVault')
today = datetime.datetime.today()
def main(events: List[func.EventHubEvent]):
for event in events:
a = event.get_body().decode('utf-8')
json.loads(a)
logging.info('Python EventHub trigger processed an event: %s', a)
logging.info(f' SequenceNumber = {event.sequence_number}')
logging.info(f' Offset = {event.offset}')
blob_client = BlobClient.from_connection_string(storage_connection_string, container_name, str(today.year) +"/" + str(today.month) + "/" + str(today.day) + "/" + str(event.sequence_number) + ".json")
blob_client.upload_blob(event.get_body().decode(),blob_type="AppendBlob")local.settings.json
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "<Endpoint1>",
"FUNCTIONS_WORKER_RUNTIME": "python",
"storage_connection_string_FromKeyVault": "<connectionString",
"storage_container_name_FromKeyVault": "<container_name>",
"EventHubReceiverPolicy_FromKeyVault": "<Endpoint2>"
}
}function.json
{
"scriptFile": "__init__.py",
"bindings": [
{
"type": "eventHubTrigger",
"name": "events",
"direction": "in",
"eventHubName": "pwo-events",
"connection": "EventHubReceiverPolicy_FromKeyVault",
"cardinality": "many",
"consumerGroup": "$Default",
"dataType": "binary"
}
]
}请注意,当我单击门户上的Run/Test时,此错误将抛出。但同样的代码在部署后也运行良好。。
发布于 2021-06-17 02:03:46
500错误无助于解决这个问题,您需要检查azure函数的特定错误。您可以使用应用程序洞察力来获取详细信息错误。函数必须配置相应的应用程序洞察力,才能在门户上查看日志。
因此,您需要为您的函数应用程序配置如下应用程序的应用程序洞察力:

然后您的函数应用程序将重新启动。
当然,你也可以去古都看:
首先,转到高级工具,然后单击“go”,

然后,在您转到kudu之后,单击Debug Console -> -> LogFiles -> Application -> Functions -> yourtriggername。您将在那里找到日志文件。
如果您基于linux,在转到kudu之后,只需单击“log”(这不支持linux的消费计划)。
https://stackoverflow.com/questions/68009769
复制相似问题