[[actuator.process-monitoring]]
== Process Monitoring
In the `spring-boot` module, you can find two classes to create files that are often useful for process monitoring:

* `ApplicationPidFileWriter` creates a file containing the application PID (by default, in the application directory with a file name of `application.pid`).
* `WebServerPortFileWriter` creates a file (or files) containing the ports of the running web server (by default, in the application directory with a file name of `application.port`).

By default, these writers are not activated, but you can enable:

* <<actuator#actuator.process-monitoring.configuration,By Extending Configuration>>
* <<actuator#actuator.process-monitoring.programmatically>>



[[actuator.process-monitoring.configuration]]
=== Extending Configuration
In the `META-INF/spring.factories` file, you can activate the listener(s) that writes a PID file, as shown in the following example:

[indent=0]
----
	org.springframework.context.ApplicationListener=\
	org.springframework.boot.context.ApplicationPidFileWriter,\
	org.springframework.boot.web.context.WebServerPortFileWriter
----



[[actuator.process-monitoring.programmatically]]
=== Programmatically
You can also activate a listener by invoking the `SpringApplication.addListeners(...)` method and passing the appropriate `Writer` object.
This method also lets you customize the file name and path in the `Writer` constructor.
