2012-05-24 106 views
3

有沒有辦法從wss或苔蘚中的服務器場中的所有服務器獲取ULS日誌。我需要使用C#以編程方式獲取日誌。我可以從服務器場中的一臺服務器獲取日誌,但我需要所有這些日誌。任何幫助讚賞。ULS登錄sharepoint 2007

+0

http://social.technet.microsoft.com/Forums/en-US/sharepointdevelopment/thread/1acfe853-5da7-4a4e-9097-d99b6dfd3b79我讀過這篇文章,但它也沒有爲我工作。任何想法 – Alexandr

回答

4

您可以使用ULS查看:http://ulsviewer.codeplex.com/

或者您可以使用從評論SPDiagnosticsService

http://msdn.microsoft.com/en-us/library/gg512103.aspx

編輯寫自己的日誌服務:

直接讀取文件,你可以做:

try 
    { 
     // Create an instance of StreamReader to read from a file. 
     // The using statement also closes the StreamReader. 
     using (StreamReader sr = new StreamReader("FilePath:\\SharePointlogfile.uls")) 
     { 
      string line; 
      // Read and display lines from the file until the end of 
      // the file is reached. 
      while ((line = sr.ReadLine()) != null) 
      { 
       Console.WriteLine(line); 
      } 
     } 
    } 
    catch (Exception e) 
    { 
     // Let the user know what went wrong. 
     Console.WriteLine("The file could not be read:"); 
     Console.WriteLine(e.Message); 
    } 

http://msdn.microsoft.com/en-us/library/system.io.streamreader.aspx

+0

的事情是,我需要得到日誌編程,沒有工具。對於wss 2007. – Alexandr

+2

您最好的選擇是使用SPDiagnosticsService類並應用於農場級別。如果您的程序可以訪問服務器場中的所有服務器,則可以使用簡單的StreamReader直接讀取文件,並將它指向每個服務器的{SharePoint Root} \ LOGS。 –

+0

我可以訪問所有的服務器,但是您提供了一行代碼。我不知道如何直接讀取文件。提前致謝。 – Alexandr