A common question is “where are Presto’s bootstrap logs?” These are logs that indicate what is happening to the cluster on startup. The Presto server generates them, and the content looks like this:
2020-05-22T11:59:32.045-0400 INFO main io.airlift.log.Logging Logging to stderr 2020-05-22T11:59:32.049-0400 INFO main Bootstrap Loading configuration 2020-05-22T11:59:32.224-0400 INFO main Bootstrap Initializing logging 2020-05-22T11:59:33.268-0400 INFO main Bootstrap PROPERTY DEFAULT RUNTIME DESCRIPTION 2020-05-22T11:59:33.268-0400 INFO main Bootstrap discovery.uri null http://localhost:8080 Discovery service base URI 2020-05-22T11:59:33.268-0400 INFO main Bootstrap service-inventory.uri null null Service inventory base URI 2020-05-22T11:59:33.268-0400 INFO main Bootstrap service-inventory.update-interval 10.00s 10.00s Service inventory update interval 2020-05-22T11:59:33.268-0400 INFO main Bootstrap discovery.presto.pool general general 2020-05-22T11:59:33.268-0400 INFO main Bootstrap discovery.collector.pool general general 2020-05-22T11:59:33.270-0400 INFO main Bootstrap discovery.max-age 30.00s 30.00s 2020-05-22T11:59:33.270-0400 INFO main Bootstrap discovery.store-cache-ttl 1.00s 1.00s 2020-05-22T11:59:33.270-0400 INFO main Bootstrap dynamic.store.gc-interval 1.00h 1.00h 2020-05-22T11:59:33.271-0400 INFO main Bootstrap dynamic.store.remote.max-batch-size 1000 1000 ...
In the above excerpt you can see Bootstrap-specific lines.
There are 3 logs of interest :
|server.log||This is the main log file used by Presto. If the server fails during initialization, it usually contains relevant information. It will automatically rotate and compress.|
|launcher.log||This log is created by the launcher and is connected to the server’s stdout and stderr streams. It will contain some log messages that occurred while initializing server logging and any error or diagnostic information generated by the JVM.|
|http-request.log||This is the HTTP request log, which contains every HTTP request received by the server. It will automatically rotate and compress.|
The log files’ location depends on where you are running your PrestoDB cluster and how you have it configured:
- If you are running on EC2 look here:
- Other places to check (not just for the server log) are:
If all else fails, look in your config.properties file (look in /opt/presto-server/etc/) to see if there is anything deployment-specific configured for logging.
Configuration tip: Presto needs a data directory for storing logs, etc. and it is recommended this is created in a data directory outside of the installation directory (which allows it to be easily preserved when upgrading Presto).
- Presto’s node properties file etc/node.properties sets the location of the data directory.
- In your node.properties file set the node.data-dir property to point to the location (filesystem path) of the intended data directory – Presto will store logs and other data here.
Finally, if you are wondering where to start when diagnosing bootstrap issues, it is worth looking at the output in the bootstrap section of the server.log file first.
Armed with the above information you should now be able to find the Presto Server Bootstrap logs.