cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Dimensions filtration - Custom event for alerting

Babar_Qayyum
DynaMight Guru
DynaMight Guru

Dear All,

Which one of the below configurations will work to cover all queues with the prefix RICH? OR

Will this totally not work?

 

Babar_Qayyum_0-1652768768059.png

Babar_Qayyum_1-1652768788566.png

Regards,

Babar

22 REPLIES 22

AgniLanka
Helper

Try "Advanced entity settings" for REGEX.

11.PNG

Hello @AgniLanka 

Thank you for your comments. We are mainly interested in the queue depth. Will this configuration work?

Our objective is to alert when a certain number increases in the Queue Depth for a certain time and for a certain group of the Queues.

Regards,

Babaar

Yes. It should work.

what's your metric ?

Queue depth.

I'm unable to follow. As far as I know, there is no queue depth metric, as in, 'Queue Depth'. 

Sample metric is : builtin:tech.kafka.kafka.network.RequestChannel.RequestQueueSize.Value

Can you take a screenshot and show me the queuedepth metric you are referring to?

AgniLanka_0-1652778220818.png



Another Sample, for you, if I go ahead with the below Configuration, the Custom_Alert will be a catch_all for "Queue Depth"  across  all services/queues/dimensions with by the names like "CLOUD_"

AgniLanka_1-1652778871383.png

 

It seems I was not clear in my message that I am referring to the IBM MQ monitoring through the extension. 

Babar_Qayyum_0-1652778787901.png

Sure. Go ahead and create a "rule based filter" and chose the "Name" as the Entity and look for 'case (insensitive)' and value be your 'filter string' expression "RICH_".


See the sample below: 

AgniLanka_0-1652779154125.png

 

This configuration will take up to the queue manager level but not to the individual queue levels. 

e.g. a queue manager can have several types of queues but we are interested to alert on a few of them when the queue depth will reach a certain limit.

Hi @Babar_Qayyum,

you are almost there, the specific metric you want is indeed ext:tech.IBMMQ_Java.Queue.Depth

mark_bley_0-1652782276204.png

 

That metric will have the different queues as dimensions, which you can select on which one to alert on a desired depth.

This is a metrics based off the queues, you can identify this in the metric key, from left to right like a drop down ext:tech.IBMMQ_Java.Queue.Depth

You can identify on which entity the metric is based (dimension) by looking at the highlighted section below

mark_bley_1-1652782546846.png

Best,

Mark

 

Hello @mark_bley 

Thank you for your comments. The discussion started from the same point. We can definitely use the dimension filter but in this way, you will have to create too many rules. Our objective is to achieve through one rule.

Regards,

Babar

You can add the desired queues to a specific management zone 

mark_bley_0-1652783329207.png

Or tag all important queues

mark_bley_1-1652783431294.png

 

You can tag (or by this means also use the following rule in a management zone) e.g. using properties/tags of the underlying process groups of the queues with following selector

type(QUEUE),toRelationships.isInstanceOf(type(QUEUE_INSTANCE),fromRelationships.runsOn(type(PROCESS_GROUP_INSTANCE),fromRelationships.isInstanceOf(type(PROCESS_GROUP),tag("some_key:some_value"))))

Exactly. I am looking for the same. How to tag individual queues?

Using the Entity Selector you can tag individual or multiple queues at the same time, will depend on the selector

mark_bley_0-1652785526734.png

For now the value given in the selector is a static value, i.e. you will need to manually define this for each individual rule in the auto-tag.

Hello @mark_bley 

How did you get the above entity? I hope that I already mentioned that we are collecting this data using the IBM MQ extension. In my case, I am 

Babar_Qayyum_0-1652788664865.png

Regards,

Babar

You will need an entity selector, what you pasted in the box is a metric query.

I think a selector like this one could work for you:

type(QUEUE),entityName("RICH_BMC_Notification_Req")

 

Hello @mark_bley 

Great! It worked for me now. Can I add multiple entities in the same rule?

Regards,

Babar

yes you can with e.g. following selector

type(QUEUE),entityName.in("RICH_BMC_Notification_Req", "some_other_queue_name")

Hello @mark_bley 

No matching entity with this configuration.

Babar_Qayyum_0-1652790437084.png

Regards,

Babar

 

The names need match exactly what is shown as the display name for each queue.

If it worked before for one it should still be showing at least that one in the preview, make sure you are copying exactly the display name.

The names are perfectly fine. One more thing I noticed is that these queues are not those queues monitored by IBM Message Queue Java (IBM Extension).

How to make sure that the queues will be tagged only belonging to the IBMExtension?

I think then you may want to change the selector to type(custom_device)... 

But for custom devices there is an extra entry (like for hosts, process, services..)

Which you can also use to apply dynamic values(placeholders) to the entities. 

Hello @mark_bley 

Let me go through with all the possible options and then I share with you the results.

Regards,

Babar

Featured Posts