2017-06-19 38 views
0

私はElasticsearch docから取った以下の構成を使用しています。 7Dまたは1日待つのではなく、すぐにこれをテストできますか?以下はelasticsearchでログのローリングと削除をテストするにはどうすればよいですか?

私log4j2.propertiesが

... 
appender.deprecation_rolling.type = RollingFile 
appender.deprecation_rolling.name = deprecation_rolling 
appender.deprecation_rolling.fileName = ${sys:es.logs}_deprecation.log 
appender.deprecation_rolling.layout.type = PatternLayout 
appender.deprecation_rolling.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] %marker%.10000m%n 
appender.deprecation_rolling.filePattern = ${sys:es.logs}_deprecation-%i.log.gz 
appender.deprecation_rolling.policies.type = Policies 
appender.deprecation_rolling.policies.size.type = SizeBasedTriggeringPolicy 
appender.deprecation_rolling.policies.size.size = 1GB 
appender.deprecation_rolling.strategy.type = DefaultRolloverStrategy 
appender.deprecation_rolling.strategy.max = 4 

logger.deprecation.name = org.elasticsearch.deprecation 
logger.deprecation.level = warn 
logger.deprecation.appenderRef.deprecation_rolling.ref = deprecation_rolling 
logger.deprecation.additivity = false 
... 

appender.rolling.strategy.type = DefaultRolloverStrategy 
appender.rolling.strategy.action.type = Delete 
appender.rolling.strategy.action.basepath = ${sys:es.logs.base_path} 
appender.rolling.strategy.action.condition.type = IfLastModified 
appender.rolling.strategy.action.condition.age = 1D 
appender.rolling.strategy.action.PathConditions.type = IfFileName 
appender.rolling.strategy.action.PathConditions.glob = ${sys:es.logs.cluster_name}-* 

注意ファイルです:私は更新 elasticsearch 5.0.1

を使用しています:私は、ログかどうかをテストするために、1日1Dのを待つ必要はありませんファイルが削除されているかどうかを確認します。このシナリオをテストするには、10分程度でどうすればテストできますか?ローリングのようなものは1分ごとに発生し、削除は10分を超えるログで行われます。

+0

は、詳細を追加します。 「7Dか1日待っていて、すぐにこれをテストするにはどうすればいいの? –

+0

@ DaniyalSyed:ログのローリングと削除をすぐにテストできるプロパティはありますか?ローリングのようなものは1分ごとに発生し、削除は10分を超えるログで行われます。 – Ricky

答えて

1

はい、方法があります。

実際には、私はサイズトリガーポリシーを使用して削除ポリシーを強制したり、削除ポリシーを作成したりして、log4j2.propertiesが機能するかどうかをテストします。

これは私たちのlog4j2.propertiesファイルの例です。変更を黒で強調表示しています。

appender.rolling.type = RollingFile 
appender.rolling.name = rolling 
appender.rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}.log 
appender.rolling.layout.type = PatternLayout 
appender.rolling.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] %marker%.-10000m%n 
appender.rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyyy-MM-dd}-%i.log.gz 
appender.rolling.policies.type = Policies 
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy 
appender.rolling.policies.time.interval = 1 
appender.rolling.policies.time.modulate = true 
**appender.rolling.policies.size.type = SizeBasedTriggeringPolicy 
appender.rolling.policies.size.size = 100KB** 

次に、ElasticSearchのデバッグログレベルを変更します。

PUT /_cluster/settings 
{"transient":{"logger._root":"DEBUG"}} 

このようにして、多くのログが生成され、RollingFile Appenderが関連する動作を引き起こしています。

したがって、24時間待たずにlog4j2.propertiesファイルをすばやく確認できます。あなたがテストを停止したいときは

は、デフォルト値を設定する必要があります。

PUT /_cluster/settings 
{"transient":{"logger._root":"ERROR"}} 

よろしく

関連する問題