Many servers have inbuilt monitoring capabilities. This depends highly on the server, but it can give some interesting insights without having to use another tool. This is precious when you don't control the machine or don't have the permissions to access/configure the server.
To illustrate this kind of monitoring, let's use our Java EE reference implementation: GlassFish.
Once started with the normal ./bin/asadmin start-domain command, you can activate monitoring with this additional command:
$ ./bin/asadmin enable-monitoring
Command enable-monitoring executed successfully.
Indeed, there is a symmetric command if you want to deactivate monitoring:
$./bin/asadmin disable-monitoring
You can list the monitors available with the get command:
$ ./bin/asadmin get server.monitoring-service.*
server.monitoring-service.module-monitoring-levels...