我的azure webjob中有以下代码
{{1}}
但是当我在webjob控制台上将其作为webjob发布时,我收到此错误
[09/16/2016 22:59:14> 279d7d:SYS INFO]状态已更改为 初始化[09/16/2016 22:59:15> 279d7d:SYS INFO]运行脚本 ' SE.Medidas.Receptor.exe'使用脚本主机 - ' WindowsScriptHost' [09/16/2016 22:59:15> 279d7d:SYS INFO]状态已更改为正在运行 [09/16/2016 22:59:16> 279d7d:ERR] [09/16/2016 22:59:16> 279d7d: ERR]未处理的异常:System.NullReferenceException:Object 引用未设置为对象的实例。 [09/16/2016 22:59:16> 在SE.Medidas.Receptor.Program.Main(String [] args)279d7d:ERR] [09/16/2016 22:59:16> 279d7d:SYS INFO]状态已更改为“失败”
[09/16/2016 22:59:16> 279d7d:SYS ERR]由于退出代码-532462766
,作业失败正如您在控制台中看到的,它甚至没有打印出我的第一个Console.Writeline:" Inicio webjob:"
答案 0 :(得分:0)
根据您的描述,我按照Get started with Event Hubs创建了我的事件中心。部署到Azure后,我可以通过KUDU中的WebJobs仪表板获得以下结果。
根据您提供的错误,我们发现无法成功启动“SE.Medidas.Receptor.exe”。所以我认为你部署的WebJob有问题。要找到此问题,请尝试停用功能public class ReadFileExtension {
static Properties prop = new Properties();
public static void main(String[] args) throws IOException {
String projectFolder = System.getProperty("user.dir");
File f1 = new File(projectFolder);
File[] listOfFiles = f1.listFiles();
System.out.println("Length:"+listOfFiles.length);
for(int i=0;i<listOfFiles.length;i++){
if (listOfFiles[i].isDirectory()) {
//System.out.println("File " + listOfFiles[i].getAbsolutePath());
String prop1 = listOfFiles[i].getAbsolutePath();
if(prop1.contains("properties")){
System.out.println(prop1);
File folder = new File(prop1);
File[] listOfFiles1 = folder.listFiles();
for (int j = 0; j < listOfFiles1.length; j++) {
if (listOfFiles1[j].isFile()) {
//System.out.println("Feature File: " + listOfFiles1[j].getAbsolutePath());
//prop.load(new FileInputStream(listOfFiles1[j].getAbsolutePath()));
prop.load(Thread.currentThread().getContextClassLoader().getResourceAsStream(listOfFiles1[j].getAbsolutePath()));
}
}
}
}
}
System.out.println("Prop 1: "+prop.getProperty("ApplicationURL"));
System.out.println("Prop 2: "+prop.getProperty("Application"));
}
}
并向CronJob
类添加新功能,如下所示:
Functions
将您的WebJob项目重新部署到Azure,并查找它是否可以按预期工作。
此外,WebJobs还绑定了EventHub。您可以使用EventHubClient发送消息并使用EventProcessorHost来侦听消息。有关详细信息,请参阅EventHub-support。