private void renderAppenderContent()

in src/main/java/org/apache/sling/commons/log/logback/internal/SlingLogPanel.java [567:589]


    private void renderAppenderContent(LoggerStateContext ctx, PrintWriter pw, String appenderName, TailerOptions opts)
            throws IOException {
        FileAppender<ILoggingEvent> fileAppender = (FileAppender<ILoggingEvent>) ctx.appenders.values().stream()
                .filter(a -> a instanceof FileAppender && appenderName.equals(a.getName()))
                .findFirst()
                .orElse(null);
        if (fileAppender == null) {
            pw.printf("No file appender with name [%s] found", XmlUtil.escapeXml(appenderName));
        } else {
            final File file = new File(fileAppender.getFile());
            if (file.exists()) {
                if (opts.tailAll()) {
                    SlingConfigurationPrinter.includeWholeFile(pw, file);
                } else {
                    int numOfLines = opts.getNumOfLines();
                    if (numOfLines == 0) {
                        numOfLines = logConfigManger.getNumOfLines();
                    }
                    new Tailer(new FilteringListener(pw, opts.getRegex()), numOfLines).tail(file);
                }
            }
        }
    }