]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
dict: Add log prefixes to commands that can log something
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Thu, 9 Nov 2023 23:45:47 +0000 (01:45 +0200)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Fri, 10 Nov 2023 16:48:25 +0000 (16:48 +0000)
src/dict/dict-commands.c

index 051e313f19cc44a830b0b77281e458c9e212bcf0..a26f63e9dc7ded7b1c3a2ef2ea4be5325f9bbdbc 100644 (file)
@@ -195,6 +195,13 @@ static int cmd_lookup(struct dict_connection_cmd *cmd, const char *const *args)
        dict_connection_cmd_async(cmd);
        event_add_str(cmd->event, "key", args[0]);
        event_add_str(cmd->event, "user", username);
+       if (username == NULL || username[0] == '\0') {
+               event_set_append_log_prefix(cmd->event, t_strdup_printf(
+                       "LOOKUP %s: ", args[0]));
+       } else {
+               event_set_append_log_prefix(cmd->event, t_strdup_printf(
+                       "LOOKUP %s (user %s): ", args[0], username));
+       }
        const struct dict_op_settings set = {
                .username = username,
        };
@@ -337,6 +344,13 @@ static int cmd_iterate(struct dict_connection_cmd *cmd, const char *const *args)
        flags |= DICT_ITERATE_FLAG_ASYNC;
        event_add_str(cmd->event, "key", args[2]);
        event_add_str(cmd->event, "user", username);
+       if (username == NULL || username[0] == '\0') {
+               event_set_append_log_prefix(cmd->event, t_strdup_printf(
+                       "ITERATE %s: ", args[2]));
+       } else {
+               event_set_append_log_prefix(cmd->event, t_strdup_printf(
+                       "ITERATE %s (user %s): ", args[2], username));
+       }
        cmd->iter = dict_iterate_init(cmd->conn->dict, &set, args[2], flags);
        cmd->iter_flags = flags;
        if (max_rows > 0)
@@ -389,6 +403,8 @@ static int cmd_begin(struct dict_connection_cmd *cmd, const char *const *args)
                e_error(cmd->event, "BEGIN: broken input");
                return -1;
        }
+       event_set_append_log_prefix(cmd->event, "BEGIN: ");
+
        struct dict_op_settings set = {
                .username = args[1],
        };
@@ -501,6 +517,14 @@ cmd_commit(struct dict_connection_cmd *cmd, const char *const *args)
        cmd->trans_id = trans->id;
        event_add_str(cmd->event, "user", trans->ctx->set.username);
 
+       if (trans->ctx->set.username == NULL ||
+           trans->ctx->set.username[0] == '\0')
+               event_set_append_log_prefix(cmd->event, "COMMIT: ");
+       else {
+               event_set_append_log_prefix(cmd->event, t_strdup_printf(
+                       "COMIT (user %s): ", trans->ctx->set.username));
+       }
+
        dict_connection_cmd_async(cmd);
        dict_transaction_commit_async(&trans->ctx, cmd_commit_callback, cmd);
        return 1;