protected LogService createService()

in gflog-core/src/main/java/com/epam/deltix/gflog/core/service/AsyncLogServiceFactory.java [118:150]


    protected LogService createService(final Logger[] loggers,
                                       final Appender[] appenders,
                                       final Clock clock,
                                       final String entryTruncationSuffix,
                                       final int entryInitialCapacity,
                                       final int entryMaxCapacity,
                                       final boolean entryUtf8) {

        final LogBuffer buffer = new LogBuffer(bufferCapacity);
        final ExceptionIndex index = (exceptionIndexCapacity > 0) ?
                new ExceptionIndex(exceptionIndexCapacity, bufferCapacity) :
                null;

        final int messageMaxCapacity = buffer.maxRecordLength() - LogRecordEncoder.MIN_SIZE - entryTruncationSuffix.length();
        final int effectiveEntryMaxCapacity = Math.min(entryMaxCapacity, messageMaxCapacity);
        final int effectiveEntryInitialCapacity = Math.min(entryInitialCapacity, effectiveEntryMaxCapacity);

        return new AsyncLogService(
                loggers,
                appenders,
                clock,
                entryTruncationSuffix,
                effectiveEntryInitialCapacity,
                effectiveEntryMaxCapacity,
                entryUtf8,
                buffer,
                index,
                threadFactory,
                idleStrategy,
                overflowStrategy,
                failedOffersCounter
        );
    }