C# 如何以编程方式读取azure web作业日志

C# 如何以编程方式读取azure web作业日志,c#,azure,azure-webjobs,azure-queues,C#,Azure,Azure Webjobs,Azure Queues,我有一个由队列触发的连续web作业。Functions方法接受一个TextWriter参数,我用它来编写作业的输出 public static void ProcessQueueMessage([QueueTrigger("build")] ProjectTrigger projectInfo, TextWriter log) 我可以在azure门户中浏览azure作业主机存档存储容器,并查看最新文件以查看主机日志,其中包含JSON,其中包含azure webjobs主机容器中实际日志的以下路

我有一个由队列触发的连续web作业。
Functions
方法接受一个
TextWriter
参数,我用它来编写作业的输出

public static void ProcessQueueMessage([QueueTrigger("build")] ProjectTrigger projectInfo, TextWriter log)
我可以在azure门户中浏览
azure作业主机存档
存储容器,并查看最新文件以查看主机日志,其中包含JSON,其中包含
azure webjobs主机
容器中实际日志的以下路径

 // ...
 "Arguments": {
    "projectInfo": "{\"ProjectId\":1}",
    "log": null
  },
  "Reason": "AutomaticTrigger",
  "StartTime": "2015-03-31T00:22:33.0447775+00:00",
  "OutputBlob": {
    "ContainerName": "azure-webjobs-hosts",
    "BlobName": "output-logs/06001f0c69064d4289b3501d0064f11c.txt"
  },
 // ...
这样,我就可以浏览到azure门户中的
azure webjobs主机
容器,找到
BlobName
指定的文件


那太好了,但是我如何通过编程实现呢?我希望能够在web应用程序中显示输出日志。如果在作业运行时知道主机存档文件的路径,我可以将其存储在SQL中,以后再访问它。这可能吗?

我没有找到我想要的确切答案,但是您可以使用
blobatAttribute
将作业日志保存到特定的blob路径,其中
ProjectId
Id
ProjectTrigger
的属性

public static void ProcessQueueMessage([QueueTrigger("build")] ProjectTrigger projectInfo, 
                   [Blob("projecthistory/{ProjectId}/{Id}.txt", FileAccess.Write)] TextWriter log)

这可能是某种东西,但我还没有找到任何关于如何使用它的文档。