1
votes

My web-application sends messages fine to the queue, no errors, no exceptions, no complaints. The Log4Net log says

Sending message Test.Nservicebus.Messages.v1.LoggMessage, Test.NServiceBus,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null with ID
456f0b8d-341d-4f92-b3ac-12872c710a6a\4121 to destination V1_LoggQueue..............

Looks fine!

But when I look in the management console I see no messages in the Queue! (There is no queue handler in place).

I am posting to a local private queue.

Should there be defined an "outgoing queue"? or is that only when I am posting to a remote queue? My list of outgoing queues is empty.

So how can I debug this? Any ideas where to start?

My nServicebus init is like

 Bus = NServiceBus.Configure
.WithWeb()                   
.Log4Net()                   
.DefaultBuilder()            
.XmlSerializer()             
.MsmqTransport()             
  .IsTransactional(false)  
  .PurgeOnStartup(false)   
.UnicastBus()                
  .ImpersonateSender(false)
.CreateBus()                 
.Start();                    

Then I just use Bus.Send(MyMessage); to send the message.

ideas?

1
Is the remote queue configured to be transactional? - Andreas Öhlund

1 Answers

0
votes

If the web endpoint and the server endpoint are on different machines you should see an outbound queue on the web machine. You may see the messages there. This means that for some reason MSMQ couldn't complete the send to the other machine. This typically means that there is a configuration issue on either machine related to MSMQ, MSDTC, or a firewall could be blocking it.

If it is all local its a bit harder to say since you won't see anything in the outbound queue. I would turn on journaling on the target queue to see if the message actually makes it there, if it does, then something is processing the message. If not then it must be a config problem.