-
Notifications
You must be signed in to change notification settings - Fork 1
io microsphere logging log4j2 layout SmartFileAppenderLayout
Type: Class | Module: microsphere-log4j2 | Package: io.microsphere.logging.log4j2.layout | Since: 1.0.0
Source:
microsphere-log4j2/src/main/java/io/microsphere/logging/log4j2/layout/SmartFileAppenderLayout.java
Smart Layout to select Layout from FileAppender or RollingFileAppender
public class SmartFileAppenderLayout<T extends Serializable> implements Layout<T>Author: Mercy
-
Introduced in:
1.0.0 -
Current Project Version:
0.1.14-SNAPSHOT
This component is tested and compatible with the following Java versions:
| Java Version | Status |
|---|---|
| Java 8 | ✅ Compatible |
| Java 11 | ✅ Compatible |
| Java 17 | ✅ Compatible |
| Java 21 | ✅ Compatible |
| Java 25 | ✅ Compatible |
LoggerContext context = (LoggerContext) LogManager.getContext(false);
SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);
byte[] footer = layout.getFooter();SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);
byte[] header = layout.getHeader();SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);
byte[] bytes = layout.toByteArray(logEvent);SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);
Object serialized = layout.toSerializable(logEvent);SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);
String contentType = layout.getContentType();SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);
Map<String, String> format = layout.getContentFormat();SmartFileAppenderLayout<?> layout = new SmartFileAppenderLayout<>(context);
layout.encode(logEvent, destination);Add the following dependency to your pom.xml:
<dependency>
<groupId>io.github.microsphere-projects</groupId>
<artifactId>microsphere-log4j2</artifactId>
<version>${microsphere-logging.version}</version>
</dependency>Tip: Use the BOM (
microsphere-logging-dependencies) for consistent version management. See the Getting Started guide.
import io.microsphere.logging.log4j2.layout.SmartFileAppenderLayout;| Method | Description |
|---|---|
getFooter |
Creates a new SmartFileAppenderLayout that inspects the given LoggerContext
|
getHeader |
{@inheritDoc} |
toByteArray |
{@inheritDoc} |
toSerializable |
{@inheritDoc} |
getContentType |
{@inheritDoc} |
encode |
{@inheritDoc} |
public byte[] getFooter()Creates a new SmartFileAppenderLayout that inspects the given LoggerContext
to select the appropriate delegating Layout per logger name.
`LoggerContext context = (LoggerContext) LogManager.getContext(false); SmartFileAppenderLayout layout = new SmartFileAppenderLayout<>(context); `
public byte[] getHeader(){@inheritDoc}
`SmartFileAppenderLayout layout = new SmartFileAppenderLayout<>(context); byte[] header = layout.getHeader(); `
public byte[] toByteArray(LogEvent event){@inheritDoc}
`SmartFileAppenderLayout layout = new SmartFileAppenderLayout<>(context); byte[] bytes = layout.toByteArray(logEvent); `
public T toSerializable(LogEvent event){@inheritDoc}
`SmartFileAppenderLayout layout = new SmartFileAppenderLayout<>(context); Object serialized = layout.toSerializable(logEvent); `
public String getContentType(){@inheritDoc}
`SmartFileAppenderLayout layout = new SmartFileAppenderLayout<>(context); String contentType = layout.getContentType(); `
public void encode(LogEvent source, ByteBufferDestination destination){@inheritDoc}
`SmartFileAppenderLayout layout = new SmartFileAppenderLayout<>(context); Map format = layout.getContentFormat(); `
/
LayoutFileAppenderRollingFileAppenderInMemoryAppender#NAME
This documentation was auto-generated from the source code of microsphere-logging.
java-logging
log4j
log4j2
- DelegatingLayout
- InMemoryAppender
- Log4j2Logger
- Log4j2LoggerFactory
- Log4j2Logging
- Log4j2Utils
- LogEventComparator
- SmartFileAppenderLayout
logback
logging-commons
- DefaultLoggingLevelsResolver
- Logging
- LoggingLevelsResolver
- LoggingMXBeanAdapter
- LoggingMXBeanRegistrar
- LoggingUtils
logging-examples
logging-test