10

I have lots of log file in my home directory:

hs_err_pid2326.log
hs_err_pid2416.log

I believe it is a java error log file, how to remove it and stop creating them?

Java version:

[kelvin@localhost ~]$ java -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) Server VM (build 17.0-b16, mixed mode
Ernest Friedman-Hill
  • 80,601
  • 10
  • 150
  • 186
kelvinfix
  • 2,915
  • 8
  • 37
  • 49
  • Have you found http://stackoverflow.com/questions/4149039/how-can-i-suppress-the-creation-of-the-hs-err-pid-file yet? – Philipp Reichart Sep 08 '11 at 14:41
  • Suppressing creation of jvm crash logs is a terrible idea. These logs are created when the equivalent of the blue screen of death occurs on the jvm. – Dunes Sep 08 '11 at 14:50

3 Answers3

12

They are created if and when the JVM crashes; they're analogous to a core file, but contain a lot of Java-specific information. They're just text files, and you can delete them like you would any other files:

$ rm ~/hs_err_pid*.log

You can stop creating them by no longer crashing the JVM. Normally, such crashes are rare. Look at the files themselves in a text editor and they will contain some info about their origins.

Ernest Friedman-Hill
  • 80,601
  • 10
  • 150
  • 186
4

These are Java crash (core) dump log files. Identify which Java process creates them by tracing and monitoring the PID.

adarshr
  • 61,315
  • 23
  • 138
  • 167
2

Have a shutdown script to delete these files.

With systemd, create a script deleting those files, e.g. /home/user/cleanJavaLogs.bash:

    rm /home/user/hs_err_pid*

Then create a service descriptor file /etc/systemd/system/clearJavaLogs.service containing:

    [Unit]
    Description=Clear Javascript "hs_err_pidnnnn.log" files on shutdown
    DefaultDependencies=no
    Before=shutdown.target reboot.target halt.target

    [Service]
    Type=oneshot
    ExecStart=/home/user/cleanJavaLogs.bash

    [Install]
    WantedBy=halt.target reboot.target shutdown.target

and activate the service:

    systemctl enable clearJavaLogs.service