Nservicebus审计服务

时间:2010-12-13 11:23:27

标签: nservicebus

我正在尝试使用nservicebus创建一个审计日志服务。因为我需要在不重新编译的情况下使应用程序找到(http://tech.dir.groups.yahoo.com/group/nservicebus/message/9416),最好挂钩OnTransportMessageReceived事件。同时我需要存储消息体传入的消息也是如此。 你能告诉我怎样才能实现? 我现在尝试了以下内容创建一个Handles IMessage的处理程序

public class AuditLogMessagehandler : IHandleMessages<IMessage>
    {
        public IBus Bus { get; set; }

        public ITransport Transport { get; set; }

        public AuditLogMessagehandler()
        {           
        }      

        public void Handle(IMessage message)
        {
            string returnAddress = Bus.CurrentMessageContext.ReturnAddress;
            string id = Bus.CurrentMessageContext.Id;

            string messageType = message.GetType().Name;
            IMessage[] messages = new IMessage[1];
            messages[0] = message;
            MessageSerializer ser = new MessageSerializer();

            Stream memoryStream = new MemoryStream();
            ser.Serialize(messages, memoryStream);
            memoryStream.Flush();
            memoryStream.Close();
        }
    }

它需要将dll复制到bin文件夹。但我没有收到消息bdoy threre,还请让我知道在什么时候或如何挂钩OnTransportMessageReceived

提前致谢, Ajai

1 个答案:

答案 0 :(得分:2)

NServicebus开箱即用。请参阅以下链接:

http://docs.particular.net/nservicebus/operations/auditing

这将获取消息的副本并将其移至审核Q.从那里您可以阅读审核q并将消息复制到文件,移动到数据库中。什么你想要的。

这有意义吗?

戴夫