I have been looking at the excellent Oracle monitors from bshopp (I'm not an Oracle expert).
This request is not limited to Oracle templates, I am just using this to illustrate the idea. There are many monitors where this sort of thing would be useful.
The problem with setting up application monitors using a general template such as this oracle template is that every component needs to be edited to set certain parameters. In this case the Oracle service name needs to be set in every component, every time you want to monitor a new database.
I know the multi edit option makes this easier, but I don't think it's ideal.
Also the name of the application monitor will, by default be the same as the template. In this example that will be "Oracle Database". That's fine, but if you're monitoring several databases on the same server it's not very helpful.
This tends to steer folks to either create many templates for the same task or having application monitors where a number of fields and the monitor name, need to be overridden, which makes admin more difficult.
What I believe would be extremely useful for this and other templates, would be to be able to use Application Custom properties within the application monitor components themselves.
For example:
Create an application custom property called PARAM1
Then in the Oracle template set the "Destination Point Name" to ${N=SwisEntity;M=Application.CustomProperties.PARAM1}
Set the Template Name to "Oracle Database:${N=SwisEntity;M=Application.CustomProperties.PARAM1}"
(I realise the template name will look a bit messy)
Now assign this template to a server. In the resulting application monitor set PARAM1 to your database service (e.g. MYDB.ME.COM)
Assuming the template contains credentials etc. the Application Monitor should work and will be called "Oracle Database:MYDB.ME.COM"
I realise the variables won't resolve at template level, but once applied to a node the only thing you need to do is set the Custom Property ("PARAM1" in this case) and you're good to go.