GenSpectrum / LAPIS-SILO

Sequence Indexing engine for Large Order of genomic data
GNU Affero General Public License v3.0
12 stars 3 forks source link

Silo preprocessing should have verbosity argument that allows debug logging, e.g. showing exact file names used etc. #565

Open corneliusroemer opened 2 months ago

corneliusroemer commented 2 months ago

I noticed that silo preprocessing doesn't have a verbosity argument - maybe I've missed some undocumented way to do this but was expecting to see it here:

[2024-09-11 13:41:23.956] [logger] [info] [api.cpp:316] Starting SILO
usage: siloApi OPTIONS
SILO - Sequence Indexing engine for Large Order of genomic data

--daemon                                            Run application as a
                                                    daemon.
--umask=mask                                        Set the daemon's umask
                                                    (octal, e.g. 027).
--pidfile=path                                      Write the process ID of
                                                    the application to given
                                                    file.
-h, --help                                          display help information
                                                    on command line arguments
--preprocessingConfig=PATH                          path to the preprocessing
                                                    config file
--databaseConfig=PATH                               path to the database
                                                    config file
-dPATH, --dataDirectory=PATH                        path to the preprocessed
                                                    data
--port=NUMBER                                       port to listen to requests
--maxQueuedHttpConnections=NUMBER                   maximum number of http
                                                    connections
--threadsForHttpConnections=NUMBER                  number of threads for http
                                                    connections
-a, --api                                           Execution mode: start the
                                                    SILO web interface
-p, --preprocessing                                 Execution mode: trigger
                                                    the preprocessing pipeline
                                                    to generate a partitioned
                                                    dataset that can be read
                                                    by the database
-tMINUTES, --estimatedStartupTimeInMinutes=MINUTES  Estimated time in minutes
                                                    that the initial loading
                                                    of the database takes. As
                                                    long as no database is
                                                    loaded yet, SILO will
                                                    throw a 503 error. This
                                                    option allows SILO to
                                                    compute a Retry-After
                                                    header for the 503
                                                    response.
fengelniederhammer commented 2 months ago

You can configure logging via env variables: https://github.com/GenSpectrum/LAPIS-SILO?tab=readme-ov-file#logging SPDLOG_LEVEL=debug

But a verbosity arguments also sounds like a good idea.

corneliusroemer commented 2 months ago

Thanks! For non-dev users you hope to find things in usage otherwise it effectively doesn't exist. I'll see what more verbosity logs!