def METHOD_NAME(self, mode = None, decode = None, skipLines = 0):
    """
    Read the log, filter and decode it and yield its lines.
    Args:
        mode (int):                 Mode used for filtering. Take a look at
                                    :py:class:`snapshotlog.LogFilter`
        decode (encfstools.Decode): instance used for decoding lines or ``None``
        skipLines (int):            skip ``n`` lines before yielding lines.
                                    This is used to append only new lines
                                    to LogView
    Yields:
        str:                        filtered and decoded log lines
    """
    logFilter = LogFilter(mode, decode)
    count = logFilter.header.count('\n')
    try:
        with open(self.logFileName, 'rt') as f:
            if logFilter.header and not skipLines:
                yield logFilter.header
            for line in f.readlines():
                line = logFilter.filter(line.rstrip('\n'))
                if not line is None:
                    count += 1
                    if count <= skipLines:
                        continue
                    yield line
    except Exception as e:
        msg = ('Failed to get take_snapshot log from {}:'.format(self.logFile), str(e))
        logger.debug(' '.join(msg), self)
        for line in msg:
            yield line