既存のjarに含めるクラスがあります(jar updateコマンド jar uf を使用)
したがって、このクラスは変更できないことがわかっているかもしれないので、設定を構成可能な方法で行いたいと考えています。
HashMap 内ですべての運用サーバーと開発サーバーを定義しました。
これは私のlog4j.xmlファイルです
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender class="com.Log4JCustomAppender" name="CUSTAPPEN">
<param value="includeDevMachiens" name="no" />
<layout class="org.apache.log4j.PatternLayout">
<param value="%m" name="ConversionPattern" />
</layout>
</appender>
<root>
<level value="INFO" />
<appender-ref ref="CUSTAPPEN" />
</root>
</log4j:configuration>
includeDevMachiens
値が の場合に Param 名があることがわかるようにno
、開発サーバーから実行されたときにメッセージを実行したくない、またはその逆
これは、メッセージが実行されるコードです。
private String includeDevMachienes ;
public String getIncludeDevMachienes() {
return includeDevMachienes;
}
public void setIncludeDevMachienes(String includeDevMachienes) {
this.includeDevMachienes = includeDevMachienes;
}
String hostAddresss = Inet4Address.getLocalHost().getHostAddress();
String include = getIncludeDevMachienes(); // yes or no
how can i use yes or no value here ??
// right now the execute will be called for everything if the hostaddress value is present in the map .
if(hostIPMap.containsValue(hostAddress))
{
execute(logMessage);
}