@Override
    public synchronized void publish(LogRecord record) {
        String loggerName = record.getLoggerName();
        Level level = possiblyReduceLogLevel(loggerName, record.getLevel());

        LevelController ctrl = getLevelControl(loggerName);
        if (!ctrl.shouldLog(level)) {
            return;
        }

        if (logRejectFilter.shouldReject(record.getMessage())) {
            return;
        }

        try {
            // provokes rotation of target
            setOutputStream(logTarget.open());
        } catch (RuntimeException e) {
            LogRecord r = new LogRecord(Level.SEVERE, "Unable to open file target");
            r.setThrown(e);
            emergencyLog(r);
            setOutputStream(System.err);
        }
        super.publish(record);
        flush();
        closeFileTarget();
    }
Publish a log record into the Vespa log target.
vespalog/src/main/java/com/yahoo/log/VespaLogHandler.java