On 27/07/2011 9:43 AM, Daniel Serodio (lists) wrote:
Ansgar Konermann wrote:
Am 25.07.2011 22:13, schrieb Daniel Serodio (lists):
Do you think using a classifier to differentiate artifacts built for
development and production is "hacky", is is this an appropriate
solution?

Use the same *artifacts* for all stages and allow for *configuring* the
relevant properties of your application at runtime/startup time, as much
as possible.

A common mechanism to configure things at runtime is using JNDI parameters.
I'mconsidering changing our build process. Setting up the DB using JNDI is easy enough, but how do you suggest we deal with different logging configurations, which differ not only on some values, but structure (ie log4j Loggers and Appenders with different classes, file paths and severity thresholds) ?

In our view, the production logging ( also log4j ) is an operations function and not an application development issue and should be fixed for all versions running in production and not vary from release to release except for major changes where new logs are required or some horrible intermittent problem in production where custom logging is required.

These are setup as separate projects in our source control (Subversion) and are installed as part of the servlet engine configuration by someone acting as an Operations system manager.
The test (customer acceptance) server is similar.
Individual test servers (PCs or shared virtual machines) are left to the programmers to sort out.

Having the logging and other server dependent configurations treated as operational issues makes it less likely that something creeps from a developer's environment into production.

We are a small shop so it is more of a question of what hat you are wearing when you do something, rather than dedicated jobs but we try to be as professional as the bigger shops. Our customers expect our production servers to run as well as the big guys' and our updates to go in cleanly.

I hope that this helps.

Ron
Regards,
Daniel Serodio

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]




---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to