code: @Override
    public void open() {
      try {
        if (this.isOpened() == false) {
          System.out.println(formatVersionInfo() + " Opening ...");
  
          this.traceLogfile = FileSystems.getDefault().getPath(this.logDirPath.toString(), super.getName() + ".log").toFile();
          this.fileOutputStream = new FileOutputStream(this.traceLogfile);
          this.setBufferedOutputStream(new BufferedOutputStream(this.fileOutputStream, this.getBufferSize()));
          this.setTracePrintStream(new TracePrintStream(this.getBufferedOutputStream(), this.getThreadMap()));
  
          this.getTracePrintStream().printf("--> TraceLog opened!%n");
          this.getTracePrintStream().printf("    Time     : %tc%n", new Date());
          this.getTracePrintStream().printf("    Bufsize  : %d%n", this.getBufferSize());
          this.getTracePrintStream().printf("    Autoflush: %b%n%n", this.isAutoflush());
          this.setOpened(true);
        }
        else {
          System.err.println("WARNING: Tracelog is opened already.");
        }
      }
      catch (FileNotFoundException ex) {
        ex.printStackTrace(System.err);
      }
    }
docs: Creates the underlying trace file and opens the associated trace streams. The file name will be assembled by the path to
  log directory and the name of the tracer.