14 Jan 2021 10:32 AM - last edited on 10 Jun 2021 12:33 PM by MaciejNeumann
Dear All,
I am facing a challenge while renaming processes groups. I tried both manual and naming rules methods but with no success.
In the below screenshot (the latest screenshot after applying the 2 naming rules, 1 for int web servers and 1 for ext web servers), you can see that hostnames are different. 2 hosts starting with the http (internal web servers) and 4 hosts starting with the rolh (external web servers).
If I change the process group name to ext/int web servers' it applies to all processes groups instead of the relevant host processes.
Regards,
Babar
Solved! Go to Solution.
14 Jan 2021 11:22 AM
Hi,
Probably you need to approach using different host groups , this way Dynatrace will separate in different process groups and from here you can start to apply renaming rules.
Another thing you can try is "Process group detection rules" to separate process groups.
Regards,
Paco
14 Jan 2021 11:29 AM
Hello @Paco A.
Thank you for your comments.
Please elaborate a little more the point number one, which I totally could not understand.
These are Apache processes, and all are 100% similar. Detection rules are not going to make any difference, in my opinion.
Regards,
Babar
14 Jan 2021 12:36 PM
@Babar Q.
Process groups may be hard to finetune if the detection fails in your case. You have two rules:
- detection rules - define processes that would make a process group
- naming rules - defined naming for detected process groups.
If in a process group you have processes (web servers in your case) from different "clusters", then you need to use detection rules to separate the process groups.
If you want to rename an existing process group, you can use the naming rules, or manually change the name in the process group setting for a particular one. All process group instances from this process groups will be renamed.
I guess in your case, you need process group detection rule. It depends on your environment, but most likely you can differentiate those either on a process property / command line arguments, etc. If you cannot differentiate those on any property, you can always add a new environments property (DT_CLUSTER_ID / DT_NODE_ID) to separate it.
14 Jan 2021 12:52 PM
Hello @Július L.
Thank you for your comments.
As you can see that properties and command line args are the same for both Ext/Int web servers. There is nothing to use detection process rule to distinguish them (if my understanding is correct).
As I mentioned in my starting comments, manual, or automatic renaming applying to all process groups (external and internal).
Do you think that now I left only with the new environment property (DT_CLUSTER_ID / DT_NODE_ID) to separate it?
Regards,
Babar
14 Jan 2021 04:44 PM
Apart from what you can see, there still might be an environment variable (not visible in the process properties) you can use in process group detection rule.
Or you can introduce DT_CLUSTER_ID and DT_NODE_ID and set the process group name directly. I can see you are using IHS (apache). In a typical deployment, you should put those variables in the envvars file in the IHS directory. (Your case might still be different).
15 Jan 2021 07:56 AM
Your problem now is that all process seems to be detected under same process group, so any process group naming applies to all the processes. So you need 1st to separate those processes in different process group and once you have it separated you can apply process group naming.
You have 2 different strategies.
Host groups affect how process groups are detected. When the same process is running in two different host groups, Dynatrace will create one process group for each host group.
Hope this help.
regards,
Paco
15 Jan 2021 11:17 AM
Hello @Paco Porro A.
I used the combination of host groups + process groups but no luck. Yes, they distributed between different host groups.
Everything is the same, including Exec name, Exac path, Command line args, etc.
Regards,
Babar
15 Jan 2021 11:22 AM
15 Jan 2021 06:09 PM
Hello @Paco Porro A.
Apologies in advance if I could not understand your point correctly. Do you mean restart after the logical naming of process groups?
Regards,
Babar
18 Jan 2021 07:13 PM
Ei @Babar Q. I think the general picture is this:
0. set up host group on each host: ex. (cluster_prod_ext | cluster_prod_rolh)
1. restart the ext/rol processes so they can split/regrouped correctly in two process groups (they will still be called the same: "Standard Detected Name" )
2. go in the settings and do a process group naming rule per host group (where you will be able to name process group based on host groups)
3. the single istances processes will still be called "Standard Detected Name that you cannot change based on metadata": only way you can force a different name on those istances is the DT_NODE_ID property.
3.1 if you want to skip step 0, 1, 2 you do the @Július L. solution.
You set up for example:
DT_CLUSTER_ID =cluster_prod_ext
DT_NODE_ID=ext_ws1
DT_CLUSTER_ID =cluster_prod_ext
DT_NODE_ID=ext_ws2
and when you are done you restart the process (apache) and you are good to go. Oneagent > Dynatrace will automatically group and read the new entities based on those data.
Good Luck
19 Jan 2021 06:43 AM
Hello @Yann B.
Thank you for your comments.
We have tried all the options and now going to perform the following as well which is earlier suggested by @Július L.
DT_CLUSTER_ID =cluster_prod_ext
DT_NODE_ID=ext_ws1
DT_CLUSTER_ID =cluster_prod_ext
DT_NODE_ID=ext_ws2
Regards,
Babar
19 Jan 2021 10:53 AM
Hi.
If you have successfully split the PG using host groups, you can specify the name for the new groups directly in PG settings. Same will be available if you split the PG using DT_CLUSTER_ID, though I would recommend avoiding that approach in favor of Host Groups or Process Group Detection rules (next paragraph).
Note, that as long as you are able to modify the environments of monitored applications, you can than use the Process Group Detection rules, to split the PG based on the new environment variable.
Please note, that you might have to split the PG in order to achieve different naming schemas, as single PG will obviously have one name. To the best of my knowledge, we don't have advanced naming configuration for individual PGIs - the names are inherited from the PG. However, depending on why different PGI names are needed, it might be possible to achieve similar results without changing the PGI names. If this is for purpose of charting or filtering, you can explore tagging rules (which may be applied to individual PGIs) and than filter based on that - https://www.dynatrace.com/support/help/how-to-use-dynatrace/tags-and-metadata/ .
19 Jan 2021 11:55 AM
Hello @Lukasz W.
Thank you for your opinion. Just before answering your comments, I wanted to share that these are SUN Solaris hosts and there are also a few limittions for this platform including the host grouping, etc.
IIf you have successfully split the PG using host groups, you can specify the name for the new groups directly in PG settings. Same will be available if you split the PG using DT_CLUSTER_ID, though I would recommend avoiding that approach in favor of Host Groups or Process Group Detection rules (next paragraph).
Note, that as long as you are able to modify the environments of monitored applications, you can than use the Process Group Detection rules, to split the PG based on the new environment variable.
Please note, that you might have to split the PG in order to achieve different naming schemas, as single PG will obviously have one name. To the best of my knowledge, we don't have advanced naming configuration for individual PGIs - the names are inherited from the PG. However, depending on why different PGI names are needed, it might be possible to achieve similar results without changing the PGI names. If this is for purpose of charting or filtering, you can explore tagging rules (which may be applied to individual PGIs) and than filter based on that - https://www.dynatrace.com/support/help/how-to-use-dynatrace/tags-and-metadata/ .
Regards,
Babar
19 Jan 2021 01:09 PM
Focusing on Solaris moves us a bit out of my area, but lets continue from general Dynatrace knowledge.
First, please let me make sure, that we understand the difference between Process Group (PG) and process group instance (PGI). Process Group is a cross-host entity, grouping processes based on multiple criteria - technological, functional, user-configured, etc. Process Group Instance (PGI) is - as a simplification - instance of PG on given host. To the best of my understanding, the screen pasted in opening post is part of PG screen, that lists PGIs in that PG.
Now, a PGI name is constructed based on PG name and some technology specific suffixes. In most cases - most likely including yours - the PGI name will be equal to PG name. This is why in order to achieve different PGI names, the recommendations from Paco, Julius and me were to have them in different PGs, which can be achieved in many ways.
Now, if you are using standalone agents (since this is Solaris), the host group functionality is not available. "logical host grouping through tagging" will not lead to creation of separate PGs. Therefore we must go back to the env-variable based solution. But that requires changing the environment of application, so if you are able to modify the environment of applications, you might as well add something that will allow Process Group Detection rules to split the PG.
Moreover, while I can't guarantee it will work here, technically the PGI name I have described earlier is PG name extended with Node name. This means, that setting only the DT_NODE_ID (without DT_CLUSTER_ID) might allow to have different PGI names without splitting the PG. If not, than please use DT_CLUSTER_ID to split the PG.
19 Jan 2021 01:19 PM
Hello @Lukasz W.
Once again thank you for your comments. Yes, in the end, we are going to check the below methodology.
Regards,
Babar