[jboss-jira] [JBoss JIRA] (WFCORE-2806) Global domain config for unique GC log file name and path

Brian Stansberry (JIRA) issues at jboss.org
Thu Oct 19 12:28:00 EDT 2017


    [ https://issues.jboss.org/browse/WFCORE-2806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13406519#comment-13406519 ] 

Brian Stansberry edited comment on WFCORE-2806 at 10/19/17 12:27 PM:
---------------------------------------------------------------------

Possibilities:

1) Where possible use a different expression resolver for these such that the standard ${jboss.server.xxx} properties available on the server are also available to the HC. This would only work if the expression is being resolved in a context where there is one and only one relevant server, i.e. during server launch.

2) A simpler variant of that would be 

<option value="-Xloggc:${jboss.domain.servers.dir}/${jboss.special.property.for.server.being.launched}/log/gc.log"/>

That's simpler because now we don't have to worry about all the different standard ${jboss.server.xxx}
properties and the different ways they can be configured. But the user has to understand this special property.

3) Another variant is to use special expression syntax instead of a special property:

<option value="-Xloggc:${jboss.domain.servers.dir}/##server.name##/log/gc.log"/>

But I don't like that at all as it opens up a whole can of worms where now we may need to check for that syntax elsewhere, need new expression resolution logic etc.

The fly in the ointment for all of these is the "This would only work if the expression is being resolved in a context where there is one and only one relevant server, i.e. during server launch" bit. So something like this would not work normally:

/host=master:read-resource(recursive=true,resolve-expressions=true)

Even something more targeted would not work:

/host=master/server-config=server-one/jvm=default:read-resource(recursive=true,resolve-expressions=true)

This is because the read-resource op is generic. And adding a lot of exception logic to it to handle special cases is not likely to be feasible.


was (Author: brian.stansberry):
Possibilities:

1) Where possible use a different expression resolver for these such that the standard ${jboss.server.xxx} properties available on the server are also available to the HC. This would only work if the expression is being resolved in a context where there is one and only one relevant server, i.e. during server launch.

2) A simpler variant of that would be 

<option value="-Xloggc:${jboss.domain.servers.dir}/${jboss.special.property.for.server.being.launched}/log/gc.log"/>

That's simpler because now we don't have to worry about all the different standard ${jboss.server.xxx}
properties and the different ways they can be configured. But the user has to understand this special property.

3) Another variant is to use special expression syntax instead of a special property:

<option value="-Xloggc:${jboss.domain.servers.dir}/##server.name##/log/gc.log"/>

But I don't like that at all as it opens up a whole can of worms where now we may need to check for that syntax elsewhere, need new expression resolution logic etc.

The fly in the ointment for all of these is the "This would only work if the expression is being resolved in a context where there is one and only one relevant server, i.e. during server launch" bit. -So something like this would not work normally:

/host=master:read-resource(recursive=true,resolve---expressions=true)

Even something more targeted would not work:

/host=master/server-config=server-one/jvm=default:read-resource(recursive=true,resolve---expressions=true)

This is because the read-resource op is generic. And adding a lot of exception logic to it to handle special cases is not likely to be feasible.-

> Global domain config for unique GC log file name and path
> ---------------------------------------------------------
>
>                 Key: WFCORE-2806
>                 URL: https://issues.jboss.org/browse/WFCORE-2806
>             Project: WildFly Core
>          Issue Type: Feature Request
>          Components: Domain Management
>            Reporter: Aaron Ogburn
>              Labels: domain-mode
>
> Customers often try to do something like the following in their server group for domain mode to easily get a unique gc log path for all server group members:
> {code}
> <option value="-Xloggc:${jboss.server.log.dir}/gc.log"/>
> {code}
> But jboss.server.log.dir can't be resolved at that point so it fails.  The next best thing that can be done is:
> {code}
> <option value="-Xloggc:${jboss.domain.servers.dir}/server-name/log/gc.log"/>
> {code}
> But then that has to be set for each server.  It'd help if domain mode had some way of easily setting a gc.log path in a server-group level or higher that could be set once and result in unique gc log paths for all servers in the server-group.



--
This message was sent by Atlassian JIRA
(v7.5.0#75005)


More information about the jboss-jira mailing list