mirror of
git://sourceware.org/git/lvm2.git
synced 2025-03-24 14:50:34 +03:00
report: add report_reset_cmdlog_seqnum and call it for each new cmd executed in lvm shell
This commit is contained in:
parent
29f7dc2922
commit
5ac008116b
@ -38,6 +38,9 @@ struct lvm_report_object {
|
||||
struct label *label;
|
||||
};
|
||||
|
||||
static uint32_t log_seqnum = 1;
|
||||
|
||||
|
||||
/*
|
||||
* Enum for field_num index to use in per-field reserved value definition.
|
||||
* Each field is represented by enum value with name "field_<id>" where <id>
|
||||
@ -3867,9 +3870,7 @@ int report_cmdlog(void *handle, const char *type, const char *context,
|
||||
const char *object_group_id, const char *msg,
|
||||
int current_errno, int ret_code)
|
||||
{
|
||||
static uint32_t seq_num = 1;
|
||||
|
||||
struct cmd_log_item log_item = {seq_num++, type, context, object_type_name,
|
||||
struct cmd_log_item log_item = {log_seqnum++, type, context, object_type_name,
|
||||
object_name ? : "", object_id ? : "",
|
||||
object_group ? : "", object_group_id ? : "",
|
||||
msg ? : "", current_errno, ret_code};
|
||||
@ -3880,6 +3881,11 @@ int report_cmdlog(void *handle, const char *type, const char *context,
|
||||
return 1;
|
||||
}
|
||||
|
||||
void report_reset_cmdlog_seqnum(void)
|
||||
{
|
||||
log_seqnum = 1;
|
||||
}
|
||||
|
||||
int report_current_object_cmdlog(const char *type, const char *msg, int32_t ret_code)
|
||||
{
|
||||
log_report_t log_state = log_get_report_state();
|
||||
|
@ -111,6 +111,7 @@ int report_cmdlog(void *handle, const char *type, const char *context,
|
||||
const char *object_id, const char *object_group,
|
||||
const char *object_group_id, const char *msg,
|
||||
int current_errno, int ret_code);
|
||||
void report_reset_cmdlog_seqnum(void);
|
||||
#define REPORT_OBJECT_CMDLOG_NAME "status"
|
||||
#define REPORT_OBJECT_CMDLOG_SUCCESS "success"
|
||||
#define REPORT_OBJECT_CMDLOG_FAILURE "failure"
|
||||
|
@ -229,6 +229,7 @@ int lvm_shell(struct cmd_context *cmd, struct cmdline_context *cmdline)
|
||||
log_set_report_object_type(LOG_REPORT_OBJECT_TYPE_CMD);
|
||||
|
||||
while (1) {
|
||||
report_reset_cmdlog_seqnum();
|
||||
if (cmd->cmd_report.log_rh) {
|
||||
/*
|
||||
* If previous command was lastlog, reset log report selection to
|
||||
|
Loading…
x
Reference in New Issue
Block a user