615 {
618 .log_file = NULL,
619 .include_filter = NULL,
620 .exclude_filter = NULL,
621 .threads = {.values = NULL, .count = 0, .capacity = 0},
622 .emit_raw_line = false,
623 };
624
626
627 int exit_code = EXIT_SUCCESS;
628 if (!parse_arguments(argc, argv, &config)) {
630 goto cleanup;
631 }
632
634 if (!collect_entries(&config, &entries)) {
636 destroy_entries(&entries);
637 goto cleanup;
638 }
639
640 print_summary(&config, &entries);
641 destroy_entries(&entries);
642
643cleanup:
644 thread_filter_list_destroy(&config.
threads);
646 return exit_code;
647}
void log_destroy(void)
Destroy the logging system and close log file.
void log_init(const char *filename, log_level_t level, bool force_stderr, bool use_mmap)
Initialize the logging system.
thread_filter_list_t threads