I suspect that the easiest way to find out who is sending messages to your queue is this: Turn off the queue for a while and see who calls your support line to tell you that the queue is down. That would be the person who needs to be informed to stop sending messages.
I don't know how long you should wait for calls -- that would depend on the other applications and your organizational structure. For example the other application might only send messages at the end of each month.
posted 5 years ago
That would be ideal for the queues where there is still message flow.
But we have few queues which are no more used/ turned OFF. This is what i see as a challenge here. Is there a way to find out technically the sender application?
We need to make sure no one , even in future uses the queues since the qmanager itself will be decommissioned.
If they're no longer used, I would assume that their associated functionality has been replaced with something else, or has become obsolete. In that case, does it matter? The sender apps will hopefully have implemented proper error handling so that someone notices that sending fails, and can take appropriate action in shutting it down.
Or you could change the handling of the incoming messages to log where they are coming from (I'm assuming, obviously, that there is is such a notion as a "sender" in the incoming messages - you didn't say what kind of queue, and what technology, we're talking about.)
As a last resort, you can put some kind of firewall in place that lets all incoming connections through to the port where the messages are delivered (assuming that works via TCP/IP), and which logs the IP addresses from where those connections are made.
Oh, and I do feel compelled to point out that it amazes me that the receiver of a message has no idea who the sender might be. Is there no registration or authentication in place?
I'm not that surprised. Allowing anybody in the organization to send requests to a queue -- that probably isn't very unusual. And setting up other systems so that it isn't clear who is actually using them to send those messages -- this all sounds very familiar, like the company I used to work for and the applications I used to work on. At least we had the advantage that there was only one application and only one group of people managing it.
posted 5 years ago
If it's all within the same organization then I can (just) imagine it. In that case the "turn it off and see who complains" approach is probably manageable.
Somehow managed to find most of the applications that send in the messages. by looking at the messages, queue names, and by stopping few queues.
The product is IBM MQ.
Is there a possibility that multiple remote queues can target one alias/local queue on a different queue manager?