commit 14b2f697689fbdfa946b310d65ef3079ee7fec5b
parent 9a4ff572053b4e82f4e7d061fabe40c28b383eef
Author: default <nobody@localhost>
Date: Thu, 15 Jun 2023 06:15:39 +0200
If a ~/log/ folder exists, also write the log there.
Diffstat:
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/data.c b/data.c
@@ -545,6 +545,9 @@ xs_list *index_list_desc(const char *fn, int skip, int show)
xs_str *_object_fn_by_md5(const char *md5)
{
+ if (!xs_is_hex(md5))
+ srv_log(xs_fmt("_object_fn_by_md5(): '%s' not hex", md5));
+
xs *bfn = xs_fmt("%s/object/%c%c", srv_basedir, md5[0], md5[1]);
mkdirx(bfn);
diff --git a/doc/snac.5 b/doc/snac.5
@@ -89,6 +89,8 @@ including HTTP headers. Only useful for debugging. May grow to enormous sizes.
.It Pa error/
If this directory exists, HTTP signature check error headers are logged here.
Only useful for debugging.
+.It Pa log/
+If this directory exists, log messages are also stored there in daily files.
.It Pa app/
This directory stores Mastodon API apps.
.It Pa token/
diff --git a/snac.c b/snac.c
@@ -95,8 +95,9 @@ void srv_debug(int level, xs_str *str)
xs *tm = xs_str_localtime(0, "%H:%M:%S");
fprintf(stderr, "%s %s\n", tm, str);
- /* if the ~/error/ folder exists, also write to a file there */
- xs *lf = xs_fmt("%s/error/debug.log", srv_basedir);
+ /* if the ~/log/ folder exists, also write to a file there */
+ xs *dt = xs_str_localtime(0, "%Y-%m-%d");
+ xs *lf = xs_fmt("%s/log/%s.log", srv_basedir, dt);
FILE *f;
if ((f = fopen(lf, "a")) != NULL) {
fprintf(f, "%s %s\n", tm, str);