private void OnMessagePersisted(object sender, PipelineMessageEventArgs e)
        {
            if (e == null)
            {
                return;
            }

            Task.Run(() => TryEnqueueJobs(e.Message));
        }
 private void OnMessageReceived(object sender, PipelineMessageEventArgs e)
 {
     try {
         PipelineMessage message = e.Message;
         ExtractMessageTargets(ref message);
         PluginObject.PersistingMessage(message);
         PersistMessage(message);
         PluginObject.PersistedMessage(message);
     }
     catch (Exception ex) {
         Logger.LogError(ex, ex.ToString());
     }
 }
        private void OnMessageReceived(object sender, PipelineMessageEventArgs e)
        {
            try {
                string timestamp = DateTime.Now.ToString("MM-dd HH:mm:ss");
                string source    = e.Message.Source;
                string content   = e.Message.Content;

                Logger.LogInformation(
                    $"[MESSAGE_RECEIVED][{timestamp}][{source}]\r\n" +
                    $"[CONTENT]:{content}\r\n"
                    );
            }
            catch (Exception ex) {
                Logger.LogError(ex, ex.ToString());
            }
        }