我正在使用spring/hibernate应用程序。我正在使用log4j进行日志记录。问题是我需要在log4j.properties文件中放置一个占位符,我需要根据环境(Dev,UAT或Production)将值设置为占位符。如何在log4j.properties文件中为占位符设置值?
Environment=${environment}
这可能吗?请帮帮我。
谢谢!
我正在使用spring/hibernate应用程序。我正在使用log4j进行日志记录。问题是我需要在log4j.properties文件中放置一个占位符,我需要根据环境(Dev,UAT或Production)将值设置为占位符。如何在log4j.properties文件中为占位符设置值?
Environment=${environment}
这可能吗?请帮帮我。
谢谢!
为什么不使用单独的键,并在运行时选择正确的键?
Environment.dev=Development
Environment.prod=Production
Environment.qa=QA
bundle.getKey(ENVIRONMENT_KEY_PREFIX + ".dev");
您可以通过命令行或设置环境变量来传递变量和值,如下所示。
Environment=${Environment}
可能需要看看这里的环境与环境的情况 – davidfrancis 2012-07-16 10:58:40
@amicngh,谢谢你的回复。环境变量,我们有系统变量和用户变量(右键单击mycomputer-> properties-> Advanced-> environmentvariables)。我应该在哪里设置?谢谢! – user1016403 2012-07-16 11:01:44
@ user1016403。不要这样设置。如果运行java应用程序,然后像java -DEnvironment = dev HelloWorld一样传递它 – amicngh 2012-07-16 11:09:03
感谢乌拉圭回合答复:
那么您可以在喜欢的日志文件中使用此。我需要在哪里放置下面的属性? Environment.dev =开发 Environment.prod =生产 Environment.qa = QA – user1016403 2012-07-16 10:45:56
我不确定,但我可能误会了你的要求。为什么需要log4属性文件中的占位符?这应该是相对环境特定的,应该由安装应用程序的人来设置。我的答案假设你想在日志本身注销环境名称。 – Matt 2012-07-16 14:04:30