def start_worker_thread(
            self,
            sleep_interval=1.0):
        """start_worker_thread

        Start the helper worker thread to publish queued messages
        to Splunk

        :param sleep_interval: sleep in seconds before reading from
                               the queue again
        """
        # Start a worker thread responsible for sending logs
        if self.sleep_interval > 0:
            self.debug_log(
                'starting worker thread')
            self.timer = Timer(
                sleep_interval,
                self.perform_work)
            self.timer.daemon = True  # Auto-kill thread if main process exits
            self.timer.start()