簡體   English   中英

使用flex集中記錄

[英]centralized logging with flex

我們正在開發一個應用程序,我們需要這個並進一步預測集中式日志記錄。 我知道flex builder 4.5中有一個log api構建。 並且loger有一個日志目標。 我發現的是如何將這些登錄信息發送到跟蹤控制台。 但我正在尋找將日志文件發送到我的服務器。

也許我可以將消息發送到填充后端數據庫的Web服務。 我不知道這是否是一種推薦方式。

如何集中存儲日志信息?

在此先感謝弗蘭克

Log4Fx在Flex日志記錄之上提供了一些靈活的日志記錄解決方案,並提供了幾個開箱即用的服務器日志記錄解決方案。 你可以在這里閱讀更多細節。 Log4Fx是免費和開源Clear Toolkit的一部分

據我所知,沒有開箱即用的方法可以做到這一點。

我有一個日志類,通過遠程對象連接到服務器。 這也可以是一個Web服務。

我對該日志類使用單例模式。

我用它來記錄AIR應用程序中的錯誤。 我有一個全局錯誤處理程序來捕獲未處理的異常。 然后我調用一個只調用遠程對象的日志類,並將錯誤記錄到日志表中。

日志類足夠靈活,可以處理調試和信息語句。 我幾乎將log4net方式復制到日志錯誤,這允許我指定類型(調試,錯誤,信息,等)和消息。 您可以重載該方法,以便您可以向其發送更多信息(如消息,已用時間,用戶ID,類等)。

這是我們用來記錄錯誤的函數:

public function LogApplicationError(memberID:int, logger:String, message:String, name:String, stackTrace:String, responder:IResponder = null ):void
  {
      var asyncToken:AsyncToken = remoteObject.LogApplicationError(memberID, logger, message, name, stackTrace);

      trace("Member ID   : " + memberID.toString());
      trace("Logger      : " + logger);
      trace("Message     : " + message);
      trace("Name        : " + name);
      trace("Stack Trace : " + stackTrace);

      if( responder != null )
          asyncToken.addResponder( responder );
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM