默認指定logback日誌位置

日常咱們在使用logback做爲日誌框架的時候,若是咱們不指定日誌的絕對路徑,就會在咱們的當前目錄(user.dir)下面生成日誌文件,日常咱們在開發階段只要制定一個log目錄就行了,可是若是在生產環境,若是不是在jar所在的路徑啓動就會致使生產的文件位置不肯定,因此咱們能夠經過在jar 啓動的時候在初始化類的地方制定一個系統變量。而後在logback 的配置文件裏面加載這個變量就好。這樣不管在哪裏啓動咱們的程序,程序都會在jar 所在的目錄生成一個日誌目錄java

private static Logger logger;
    static {
        String path = Run.class.getProtectionDomain().getCodeSource().getLocation().getPath();
        File file = new File(path);
        String parent = file.getParent();
        System.setProperty("app.dir", parent);
        //logger 調用必定要在set app.dir 後面,在前面就會致使 app.dir的參數沒有生效
     public static void main(String[] args) {

    }
<!--  app.dir 爲app 可執行jar 所在路徑-->
    <property name="LOG_HOME" value="${app.dir}/log"/>
相關文章
相關標籤/搜索