You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Created) (JIRA)" <ji...@apache.org> on 2012/01/17 07:38:42 UTC
[jira] [Created] (CAMEL-4906) Allow to configure management name
using a pattern, such as to enforce a fixed name
Allow to configure management name using a pattern, such as to enforce a fixed name
-----------------------------------------------------------------------------------
Key: CAMEL-4906
URL: https://issues.apache.org/jira/browse/CAMEL-4906
Project: Camel
Issue Type: New Feature
Components: camel-core, osgi
Affects Versions: 2.9.0
Reporter: Claus Ibsen
Assignee: Claus Ibsen
Fix For: 2.9.1, 2.10.0
When Camel enlist itself in JMX it uses a auto assigning naming strategy, which can detect clashes (name already exist) and then re-calculate a new name, finding a free name. This ensures you can deploy multiple Camel apps in the same JVM, whether you run in Tomcat, JEE, OSGi etc.
However for some people they want to have full control of the JMX name.
For OSGi users in particular, as by default Camel uses the bundle-id as part of the JMX name.
So the JMX name can change, for example if you restart the server (and have deleted the data directory) so bundle-ids is re-assigned by the OSGi container.
Or that you uninstall and install the app again. Then the old bundle-id is never reused.
We could possible add a managementName attribute to <camelContext>
with a syntax pattern, so end user can configure this in the XML as well, fairly easily
<camelContext id="foo" managementNamePattern="myFoo">
...
</camelContext>
eg the managementName is a new attribute, where you can use a syntax
to configure it with tokens
- #name# - the camel context name
- #camelId# - same as #name#
- #bundleId# - the bundle id
- #symbolicName# - the bundle symbolic name
- #counter# - an incrementing counter, used to remedy clashes by finding a new free name
Then they can assemble their naming as they want.
The osgi default naming pattern could be, which it is hardcoded as currently:
#bundleId#-#name#
In the example above it uses a fixed name "myFoo" which then must be unique in the JVM
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CAMEL-4906) Allow to configure management name
using a pattern, such as to enforce a fixed name
Posted by "Claus Ibsen (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen updated CAMEL-4906:
-------------------------------
Fix Version/s: (was: 2.9.1)
> Allow to configure management name using a pattern, such as to enforce a fixed name
> -----------------------------------------------------------------------------------
>
> Key: CAMEL-4906
> URL: https://issues.apache.org/jira/browse/CAMEL-4906
> Project: Camel
> Issue Type: New Feature
> Components: camel-core, osgi
> Affects Versions: 2.9.0
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Fix For: 2.10.0
>
>
> When Camel enlist itself in JMX it uses a auto assigning naming strategy, which can detect clashes (name already exist) and then re-calculate a new name, finding a free name. This ensures you can deploy multiple Camel apps in the same JVM, whether you run in Tomcat, JEE, OSGi etc.
> However for some people they want to have full control of the JMX name.
> For OSGi users in particular, as by default Camel uses the bundle-id as part of the JMX name.
> So the JMX name can change, for example if you restart the server (and have deleted the data directory) so bundle-ids is re-assigned by the OSGi container.
> Or that you uninstall and install the app again. Then the old bundle-id is never reused.
> We could possible add a managementName attribute to <camelContext>
> with a syntax pattern, so end user can configure this in the XML as well, fairly easily
> <camelContext id="foo" managementNamePattern="myFoo">
> ...
> </camelContext>
> eg the managementName is a new attribute, where you can use a syntax
> to configure it with tokens
> - #name# - the camel context name
> - #camelId# - same as #name#
> - #bundleId# - the bundle id
> - #symbolicName# - the bundle symbolic name
> - #counter# - an incrementing counter, used to remedy clashes by finding a new free name
> Then they can assemble their naming as they want.
> The osgi default naming pattern could be, which it is hardcoded as currently:
> #bundleId#-#name#
> In the example above it uses a fixed name "myFoo" which then must be unique in the JVM
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (CAMEL-4906) Allow to configure management name
using a pattern, such as to enforce a fixed name
Posted by "Claus Ibsen (Resolved) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen resolved CAMEL-4906.
--------------------------------
Resolution: Fixed
Update wiki documentation at the Camel JMX wiki page.
> Allow to configure management name using a pattern, such as to enforce a fixed name
> -----------------------------------------------------------------------------------
>
> Key: CAMEL-4906
> URL: https://issues.apache.org/jira/browse/CAMEL-4906
> Project: Camel
> Issue Type: New Feature
> Components: camel-core, osgi
> Affects Versions: 2.9.0
> Reporter: Claus Ibsen
> Assignee: Claus Ibsen
> Fix For: 2.10.0
>
>
> When Camel enlist itself in JMX it uses a auto assigning naming strategy, which can detect clashes (name already exist) and then re-calculate a new name, finding a free name. This ensures you can deploy multiple Camel apps in the same JVM, whether you run in Tomcat, JEE, OSGi etc.
> However for some people they want to have full control of the JMX name.
> For OSGi users in particular, as by default Camel uses the bundle-id as part of the JMX name.
> So the JMX name can change, for example if you restart the server (and have deleted the data directory) so bundle-ids is re-assigned by the OSGi container.
> Or that you uninstall and install the app again. Then the old bundle-id is never reused.
> We could possible add a managementName attribute to <camelContext>
> with a syntax pattern, so end user can configure this in the XML as well, fairly easily
> <camelContext id="foo" managementNamePattern="myFoo">
> ...
> </camelContext>
> eg the managementName is a new attribute, where you can use a syntax
> to configure it with tokens
> - #name# - the camel context name
> - #camelId# - same as #name#
> - #bundleId# - the bundle id
> - #symbolicName# - the bundle symbolic name
> - #counter# - an incrementing counter, used to remedy clashes by finding a new free name
> Then they can assemble their naming as they want.
> The osgi default naming pattern could be, which it is hardcoded as currently:
> #bundleId#-#name#
> In the example above it uses a fixed name "myFoo" which then must be unique in the JVM
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira