diff options
| author | chenzizhan <[email protected]> | 2023-07-31 18:03:59 +0800 |
|---|---|---|
| committer | chenzizhan <[email protected]> | 2023-07-31 18:03:59 +0800 |
| commit | 603a81ae5ab5920cdd92d14e3f397a4416efc4c5 (patch) | |
| tree | 0a3dbd098b3e1b261ce6a490910287adf5f98095 /src/exporter/cjson_exporter.c | |
| parent | f3269add7a259a0f622656172a8e4e00f4bfc9cc (diff) | |
too many metrics, cell_iter_next_cube
Diffstat (limited to 'src/exporter/cjson_exporter.c')
| -rw-r--r-- | src/exporter/cjson_exporter.c | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/exporter/cjson_exporter.c b/src/exporter/cjson_exporter.c index c836dcd..a4154c4 100644 --- a/src/exporter/cjson_exporter.c +++ b/src/exporter/cjson_exporter.c @@ -168,7 +168,7 @@ const char *cell_iter_get_name(const struct cell_iter *iter) { return fieldstat_get_metric_name(iter->instance, iter->cube_ids[iter->curr_cube_idx], iter->curr_metric_id); } -int cell_iter_next_nonempty_cube(struct cell_iter *iter) { +int cell_iter_next_cube(struct cell_iter *iter) { const struct fieldstat *instance = iter->instance; while (iter->curr_cube_idx < iter->n_cube - 1) { int cube_id_next = iter->cube_ids[++iter->curr_cube_idx]; @@ -213,13 +213,20 @@ int cell_iter_next_nonempty_metric(struct cell_iter *iter) { return 0; } +int cell_iter_next_non_empty_cube(struct cell_iter *iter) { + while (cell_iter_next_cube(iter)) { + if (cell_iter_next_nonempty_metric(iter)) { + iter->shared_tag = fieldstat_get_shared_tags(iter->instance, iter->cube_ids[iter->curr_cube_idx]); + return 1; + } + } + return 0; +} + int cell_iter_next(struct cell_iter *iter) { if (iter->curr_cube_idx == -1) { // first time - while (cell_iter_next_nonempty_cube(iter)) { - if (cell_iter_next_nonempty_metric(iter)) { - iter->shared_tag = fieldstat_get_shared_tags(iter->instance, iter->cube_ids[iter->curr_cube_idx]); - return 1; - } + if (cell_iter_next_non_empty_cube(iter)) { + return 1; } return 0; } @@ -235,11 +242,8 @@ int cell_iter_next(struct cell_iter *iter) { fieldstat_tag_list_arr_free(iter->shared_tag, 1); iter->shared_tag = NULL; - while (cell_iter_next_nonempty_cube(iter)) { - if (cell_iter_next_nonempty_metric(iter)) { - iter->shared_tag = fieldstat_get_shared_tags(iter->instance, iter->cube_ids[iter->curr_cube_idx]); - return 1; - } + if (cell_iter_next_non_empty_cube(iter)) { + return 1; } return 0; } |
