diff --git a/src/app.ml b/src/app.ml index d556864..b5a814f 100644 --- a/src/app.ml +++ b/src/app.ml @@ -57,3 +57,15 @@ let port = failwith "invalid `port` value in configuration file" ) ) let () = Dream.log "port: %d" port + +let log = + match Scfg.Query.get_dir "log" config with + | None -> true + | Some open_registration -> ( + match Scfg.Query.get_param 0 open_registration with + | Error e -> failwith e + | Ok "true" -> true + | Ok "false" -> false + | Ok _unknown -> failwith "invalid `log` value in configuration file" ) + +let () = Dream.log "log: %b" log diff --git a/src/permap.ml b/src/permap.ml index 46def5e..1be67b2 100644 --- a/src/permap.ml +++ b/src/permap.ml @@ -246,7 +246,8 @@ let routes = [ get_ "/:thread_id" thread_get; post "/:thread_id" reply_post ] let () = - Dream.run ~port:App.port @@ Dream.logger @@ Dream.cookie_sessions + let logger = if App.log then Dream.logger else Fun.id in + Dream.run ~port:App.port @@ logger @@ Dream.cookie_sessions (* this should replace memory/cookie sessions but it doesn't work :-( @@ Dream.sql_pool Db.db_uri @@ Dream.sql_sessions