「日誌和追蹤分析器」為下列記載公用程式,提供了獨立式和外掛程式支援:
這個支援包括:
這個支援由下列外掛程式所提供:
記載公用程式 |
外掛程式 |
---|---|
Java 記載 (JSR-047) |
org.eclipse.hyades.logging.java14 |
Apache Jakarta 共用記載 |
org.eclipse.hyades.logging.commons |
Apache Jakarta Log4J 記載 |
org.eclipse.hyades.logging.log4j |
下節說明每種類型的記載公用程式支援之詳細資料,並提供指標到示範如何使用的範例。
org.eclipse.hyades.logging.java14 套件下 java.util.logging.LogRecord 類別的延伸規格,可讓您建立自訂的日誌記錄, 以將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 記載到 java.util.logging.LogRecord 中。這個 org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord 延伸了 java.util.logging.LogRecord,且包含指向 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 的參照。所有 java.util.logging.LogRecord 內容都會對映到一或多個 Common Base Event 內容,以維護非 Common Base Event 察覺處理常式和格式製作程式的反映力。
實作 org.eclipse.hyades.logging.java14 套件下的 java.util.logging.Filter 介面,只容許成功記載 org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord。
在 org.eclipse.hyades.logging.java14 套件下,java.util.logging.Formatter 抽象類別的延伸可讓您配置處理常式, 以將 org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord 和 java.util.logging.LogRecord 日誌訊息格式化成 XML。 這個 org.eclipse.hyades.logging.java14.XmlFormatter 格式製作器會依據 Common Base Event 1.0.1 版的綱目, 將 org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord 或 java.util.logging.LogRecord 日誌訊息轉換成 XML。 格式化時會檢查日誌訊息, 查看它是否實作 org.eclipse.hyades.logging.core.IExternalizableToXml 介面(例如, org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord)。如果是這樣的話,系統會呼叫 externalizeCanonicalXmlString() API 來代替 XML 序列化。否則,會使用 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 中的相同對映表, 將 java.util.logging.LogRecord 日誌訊息轉換成 Common Base Event 物件,並藉由呼叫 externalizeCanonicalXmlString() API 的方法,將該訊息序列化成 XML。
在 org.eclipse.hyades.logging.java 套件下,java.util.logging.Handler 抽象類別的延伸可讓您配置日誌程式,以將
org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 和 java.util.logging.LogRecord 日誌訊息記載到記載代理程式。
這個 org.eclipse.hyades.logging.java.LoggingAgentHandler 處理常式會根據日誌程式和處理常式的過濾器和記載層次, 檢查是否可以記載已記載到日誌程式的 org.eclipse.hyades.logging.java14.CommonBaseEventLogRecord 或 java.util.logging.LogRecord 日誌訊息。 如果可記載這個日誌訊息,系統會解析一個記載代理程式,其名稱與記載該訊息的日誌程式相同。 否則,便要使用 org.eclipse.hyades.logging.java.SingleLoggingAgentHandler 處理常式,其會建立一個名叫「記載日誌處理常式」的記載代理程式。 系統會利用 org.eclipse.hyades.logging.java.XmlFormatter 將該訊息格式化成 XML,並寫入到記載代理程式中。
說明範例
本範例針對「Java 記載 (JSP-047)」的獨立式和外掛程式支援,說明其新使用者和現有使用者所需的配置和設備, 藉以顯示如何平衡「Java 記載 (JSP-047)」的支援。如需詳細資訊,請開啟檔案 > 新建 > 範例... > Hyades 記載 > Hyades JSR-047 記載範例。
在 org.eclipse.hyades.logging.commons 套件下,如果實作 org.apache.commons.logging.Log 介面,便可建立日誌程式,以記載 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、java.lang.Object 和 java.lang.Throwable 日誌訊息。 這個 org.eclipse.hyades.logging.commons.Logger 會依據日誌程式的記載層次, 檢查是否可以記載已記載到日誌程式的 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、 java.lang.Object 或 java.lang.Throwable 日誌訊息。 如果可記載日誌訊息,便會將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、java.lang.Object 或 java.lang.Throwable 日誌訊息格式化,並記載。 系統會提供 org.apache.commons.logging.LogFactory 抽象類別的實作方式, 其表示 org.eclipse.hyades.logging.commons.Logger 案例的特定 Proxy Factory。 這個 org.eclipse.hyades.logging.commons.LoggerFactory Proxy Factory 適用於多個類別載入器環境,在該環境中, 每一個個別的類別載入器都需要一或多種不同類型的日誌程式及其 Factory,且所有類別載入器都使用相同的 Apache Commons 二進位檔。
org.eclipse.hyades.logging.commons.Logger 會依據 Common Base Event 1.0.1 版的綱目,將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、java.lang.Object 和 java.lang.Throwable 日誌訊息格式化成 XML。 格式化時會檢查日誌訊息,查看它是否實作 org.eclipse.hyades.logging.core.IExternalizableToXml 介面 (例如,org.eclipse.hyades.logging.events.cbe.CommonBaseEvent)。 如果是這樣的話,系統會呼叫 externalizeCanonicalXmlString() API 來代替 XML 序列化。 否則,會使用 org.eclipse.hyades.internal.logging.core.XmlGenerator,將 java.lang.Object 或 java.lang.Throwable 日誌訊息轉換成 Common Base Event 物件, 並藉由呼叫 externalizeCanonicalXmlString() API 的方法,將該訊息序列化成 XML。
org.eclipse.hyades.logging.commons.Logger 會將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、 java.lang.Object 和 java.lang.Throwable 日誌訊息記載到記載代理程式。 如果可記載這個日誌訊息,系統會解析一個記載代理程式,其名稱與記載該訊息的日誌程式相同。 系統會將該訊息格式化成 XML,並寫入記載代理程式中。
在 org.eclipse.hyades.logging.commons 套件下,如果實作 org.apache.commons.logging.Log 介面, 便可建立日誌程式,以將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、java.lang.Object 和 java.lang.Throwable 日誌訊息記載到本端檔案。 這個 org.eclipse.hyades.logging.commons.FileLogger 會依據日誌程式的記載層次, 檢查是否可以記載已記載到日誌程式的 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、 java.lang.Object 或 java.lang.Throwable 日誌訊息。 如果可記載日誌訊息,便會將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent、java.lang.Object 或 java.lang.Throwable 日誌訊息格式化成 XML,並記載到本端檔案。 系統會提供 org.apache.commons.logging.LogFactory 抽象類別的實作方式, 其表示 org.eclipse.hyades.logging.commons.FileLogger 案例的特定 Proxy Factory。 這個 org.eclipse.hyades.logging.commons.FileLoggerFactory Proxy Factory 適用於多個類別載入器環境, 在該環境中,每一個個別的類別載入器都需要一或多種不同類型的日誌程式及其 Factory, 且所有類別載入器都使用相同的 Apache Commons 二進位檔。
說明範例
本範例針對「Apache Jakarta 共用記載」的獨立式和外掛程式支援,說明其新使用者和現有使用者所需的配置和設備, 藉以顯示如何平衡「Apache Jakarta 共用記載」的支援。如需詳細資訊,請參閱檔案 > 新建 > 範例... > Hyades 記載 > Hyades Apache 共用記載範例。
org.apache.log4j.spi.LoggingEvent 日誌訊息的訊息內容可讓您記載 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent。
在 org.eclipse.hyades.logging.log4j 套件下, org.apache.log4j.spi.Filter 抽象類別的延伸只容許成功記載 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent。
在 org.eclipse.hyades.logging.log4j 套件下,org.apache.log4j.Layout 抽象類別的延伸可讓您配置附加程式, 以將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 和 org.apache.log4j.spi.LoggingEvent 日誌訊息格式化成 XML。 這個 org.eclipse.hyades.logging.log4j.XmlLayout 格式製作器會依據 Common Base Event 1.0.1 版的綱目, 將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 或 org.apache.log4j.spi.LoggingEvent 日誌訊息轉換成 XML。 格式化時會檢查日誌訊息,查看 org.apache.log4j.spi.LoggingEvent 的訊息內容是否實作 org.eclipse.hyades.logging.core.IExternalizableToXml 介面 (例如, org.eclipse.hyades.logging.events.cbe.CommonBaseEvent)。 如果是這樣的話,系統會呼叫 externalizeCanonicalXmlString() API 來代替 XML 序列化。 否則,會使用 org.eclipse.hyades.internal.logging.core.XmlGenerator, 將 org.apache.log4j.spi.LoggingEvent 日誌訊息轉換成 Common Base Event 物件, 並藉由呼叫 externalizeCanonicalXmlString() API 的方法,將該訊息序列化成 XML。
在 org.eclipse.hyades.logging.log4j 套件下,org.apache.log4j.AppenderSkeleton 抽象類別的延伸可讓您配置日誌程式,
以將 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 和 org.apache.log4j.spi.LoggingEvent 日誌訊息記載到記載代理程式。
這個 org.eclipse.hyades.logging.log4j.LoggingAgentAppender 附加程式會依據日誌程式和附加程式的過濾器和日誌層次, 檢查是否可以記載已記載到日誌程式的 org.eclipse.hyades.logging.events.cbe.CommonBaseEvent 和 org.apache.log4j.spi.LoggingEvent 日誌訊息。 如果可記載這個日誌訊息,系統會解析一個「記載代理程式」,其名稱與記載該訊息的日誌程式相同。 否則,便要使用 org.eclipse.hyades.logging.log4j.SingleLoggingAgentAppender 附加程式,其會建立一個名叫「記載日誌附加程式」的記載代理程式。 系統會利用 org.eclipse.hyades.logging.log4j.XmlLayout 將該訊息格式化成 XML,並寫入記載代理程式中。
說明範例
本範例針對「Apache Jakarta Log4J 記載」的獨立式和外掛程式支援,說明其新使用者和現有使用者所需的配置和設備, 藉以顯示如何平衡「Apache Jakarta Log4J 記載」的支援。如需詳細資訊,請參閱檔案 > 新建 > 範例... > Hyades 記載 > Hyades Apache Log4J 記載範例。
相關概念
Common Base Event 模型
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.