2015-03-27 2 views
2

У меня есть Azure WebJob, который писал на выходе, когда я отлаживал его локально, но не тогда, когда я запускаю его в Azure. Контейнер вывода blob полностью пуст, и окно вывода на сайте scm.azurewebsites.net выделено серым цветом и пустое. Нужно ли мне что-то настраивать, чтобы отправить туда свой вывод?Azure WebJob не записывается на вывод

Вот скриншот того, что они оба выглядят как:

Webjob no output

Вот код, я бегу на Webjob:

public static void InsertSQLData([BlobTrigger("blobcontainer/{name}")] Stream input, string name) 
{ 
    var sw = new Stopwatch(); 
    sw.Start(); 

    RetryAbleBCP rtbcp = new RetryAbleBCP(input, 
     "dbo.FullText", 
     ConfigurationManager.ConnectionStrings["SqlConnection"].ConnectionString, 
     SqlBulkCopyOptions.Default, 
     ',', 
     500, 
     null); 
    try 
    { 
     rtbcp.BulkInsertCSV(); 
    } 
    catch (OutOfMemoryException eoom) 
    { 
     Console.WriteLine(eoom.Message); 
    } 
    catch (IOException eio) 
    { 
     Console.WriteLine(eio.Message); 
    } 
    catch (InvalidOperationException eiop) 
    { 
     Console.WriteLine(string.Format("Row {0}: {1}", rtbcp.NumRowsRead, eiop.Message)); 
    } 
    catch (SqlException se) 
    { 
     Console.WriteLine(se.Message); 
    } 
    catch (Exception e) 
    { 
     Console.WriteLine(string.Format("General Application Exception: {0}", e.Message)); 
    } 

    sw.Stop(); 
    Console.Out.WriteLine("Finished Batch Insert. Elapsed: {0}ms", sw.ElapsedMilliseconds);   
} 

ответ

4

В своем коде вы пишете журналы используя Console.WriteLine(). Для того, чтобы иметь выход показать в WebJobs приборной панели, используйте TextWriter, например, так:

public static void InsertSQLData([BlobTrigger("blobcontainer/{name}")] Stream input, 
           string name, TextWriter log) 
{ 
    // ... 
    log.WriteLine("some message"); 
} 
+0

В дополнение к тому, что спросил Pranav: вы Устанавливая правильные строки соединения? –

+0

Console.WriteLine(). И я устанавливаю правильные строки соединения, потому что контейнер (azure-jobs-host-output) был создан webjob, и фактическое задание выполнено правильно. Я просто не получаю вывод –

+0

Добавил код. Извините за задержку –