Example #1
0
        public void Publish <T>(string messageType, string messageAction, T message)
        {
            InitializePublisher();

            if (!messagePublisherActive)
            {
                return;
            }

            var properties = IstaMessageProperties.CreatePersistent(messageType, messageAction);

            properties.AppId = miramarIdentifier ?? "unknown";

            messagePublisher.Publish(monitorExchange, message, properties);
        }
Example #2
0
        protected override void Write(LogEventInfo logEvent)
        {
            if (!messagePublisherIsActive)
            {
                return;
            }

            var miramarIdentifier = ConfigurationManager.AppSettings["MiramarIdentifier"];
            var monitorExchange   = ConfigurationManager.AppSettings["RabbitMqMonitorExchange"];

            if (string.IsNullOrWhiteSpace(monitorExchange))
            {
                return;
            }

            var properties  = logEvent.Properties;
            var messageType = "info";

            if (properties.ContainsKey("MessageType"))
            {
                messageType = properties["MessageType"].ToString();
            }

            var message        = Layout.Render(logEvent);
            var messagePayload = new
            {
                clientId = properties["ClientId"],
                taskId   = properties["TaskId"],
                type     = messageType,
                date     = DateTime.Now,
                message,
            };

            var messageProperties = IstaMessageProperties.CreatePersistent("message", "message");

            messageProperties.AppId = miramarIdentifier ?? "unknown";

            messagePublisher.Publish(monitorExchange, messagePayload, messageProperties);
        }