Configure logging¶

By default, the Flower logger uses logging level INFO. This can be changed via the FLWR_LOG_LEVEL environment variable to any other levels that Python’s logging module supports. For example, to launch your SuperLink with DEBUG logs, use:

# Launch the SuperLink with TLS (or use --insecure)
FLWR_LOG_LEVEL=DEBUG flower-superlink \
    --ssl-ca-certfile certificates/ca.crt \
    --ssl-certfile certificates/server.pem \
    --ssl-keyfile certificates/server.key

WARNING 2025-08-20 17:13:30,391:   DEBUG logs enabled. Do not use this in production, as it may expose sensitive details.
INFO 2025-08-20 17:13:31,360:      Starting Flower SuperLink
INFO 2025-08-20 17:13:31,378:      Starting the SuperLink Runtime HTTP API on 127.0.0.1:8000.
INFO 2025-08-20 17:13:31,381:      Starting the SuperLink Control HTTP API on 127.0.0.1:8000.
DEBUG 2025-08-20 17:13:31,382:     Automatic node authentication enabled
INFO 2025-08-20 17:13:31,382:      Flower Deployment Runtime: Starting Fleet API (gRPC-rere) on 0.0.0.0:9092
WARNING 2025-08-20 17:13:31,515:   DEBUG logs enabled. Do not use this in production, as it may expose sensitive details.
INFO 2025-08-20 17:13:32,324:      Starting Flower SuperExec

Note

You can make use of the FLWR_LOG_LEVEL environment variable when executing other Flower commands to provision the different components in a Flower Federation (see Run Flower with the Deployment Runtime) or using the flwr CLI.

Configure gRPC logging¶

Flower uses gRPC for the Fleet API and other gRPC-based connections (see Flower Network Communication). You can set the verbosity level of gRPC logs using gRPC environment variables.