We can create macros to add logic to our garbage collection logging. Here is the general syntax for the log macro:
log_<level>(Tag1[,...])(fmtstr, ...)
Here is an example of a log macro:
log_debug(gc, classloading)("Number of objects loaded: %d.", object_count)
The following example skeleton log macro shows how you can use the new Java 9 logging framework to create scripts for greater fidelity in logging:
LogHandle(gc, rt, classunloading) log; if (log.is_error()) { // do something specific regarding the 'error' level } if (log.is_warning()) { // do something specific regarding the 'warning' level } if (log.is_info()) { // do something specific regarding the 'info' level } if (log.is_debug()) { // do something specific regarding ...