static void dissectRemoveImageCleanup(
        final MutableDirectBuffer buffer, final int offset, final StringBuilder builder)
    {
        int absoluteOffset = offset;
        absoluteOffset += dissectLogHeader(CONTEXT, REMOVE_IMAGE_CLEANUP, buffer, absoluteOffset, builder);

        builder.append(": sessionId=").append(buffer.getInt(absoluteOffset, LITTLE_ENDIAN));
        absoluteOffset += SIZE_OF_INT;

        builder.append(" streamId=").append(buffer.getInt(absoluteOffset, LITTLE_ENDIAN));
        absoluteOffset += SIZE_OF_INT;

        builder.append(" id=").append(buffer.getLong(absoluteOffset, LITTLE_ENDIAN));
        absoluteOffset += SIZE_OF_LONG;

        builder.append(" channel=");
        buffer.getStringAscii(absoluteOffset, builder);
    }
@Test
    void dissectRemoveImageCleanup()
    {
        final int offset = 32;
        internalEncodeLogHeader(buffer, offset, 66, 99, () -> 12345678900L);
        buffer.putInt(offset + LOG_HEADER_LENGTH, 77, LITTLE_ENDIAN);
        buffer.putInt(offset + LOG_HEADER_LENGTH + SIZE_OF_INT, 55, LITTLE_ENDIAN);
        buffer.putLong(offset + LOG_HEADER_LENGTH + SIZE_OF_INT * 2, 1_000_000L, LITTLE_ENDIAN);
        buffer.putStringAscii(offset + LOG_HEADER_LENGTH + SIZE_OF_INT * 2 + SIZE_OF_LONG, "URI");

        DriverEventDissector.dissectRemoveImageCleanup(buffer, offset, builder);

        assertEquals("[12.345678900] " + CONTEXT + ": " + REMOVE_IMAGE_CLEANUP.name() +
            " [66/99]: sessionId=77 streamId=55 id=1000000 channel=URI",
            builder.toString());
    }