Skip to content

KeyError: "None of ['TIME'] are in the columns" #178

@jiangjingzhi2003

Description

@jiangjingzhi2003

Hi, I am running Magma for aflplusplus with all programs.

When I try to use
tools/benchd/exp2json.py tools/captain/workdir3 bugs_rest.json to generate summary,
I encountered following errors:
WARNING:root:aflplusplus/poppler/pdf_fuzzer/0 contains no monitor logs. Check the corresponding campaign log file for more information: tools/captain/workdir3/log/aflplusplus_poppler_pdf_fuzzer_0_container.log
WARNING:root:aflplusplus/poppler/pdf_fuzzer/8 contains no monitor logs. Check the corresponding campaign log file for more information: tools/captain/workdir3/log/aflplusplus_poppler_pdf_fuzzer_8_container.log
ERROR:root:Encountered exception when processing aflplusplus/poppler/pdf_fuzzer/0. Details: "None of ['TIME'] are in the columns"
Traceback (most recent call last):
File "/home/jingzhijiang/magma/tools/benchd/exp2json.py", line 152, in process_one_campaign
df = generate_monitor_df(os.path.join(dumpdir, "monitor"), path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/jingzhijiang/magma/tools/benchd/exp2json.py", line 130, in generate_monitor_df
df.set_index('TIME', inplace=True)
File "/home/jingzhijiang/miniconda3/lib/python3.12/site-packages/pandas/core/frame.py", line 6129, in set_index
raise KeyError(f"None of {missing} are in the columns")
KeyError: "None of ['TIME'] are in the columns"
ERROR:root:Encountered exception when processing aflplusplus/poppler/pdf_fuzzer/8. Details: "None of ['TIME'] are in the columns"
Traceback (most recent call last):
File "/home/jingzhijiang/magma/tools/benchd/exp2json.py", line 152, in process_one_campaign
df = generate_monitor_df(os.path.join(dumpdir, "monitor"), path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/jingzhijiang/magma/tools/benchd/exp2json.py", line 130, in generate_monitor_df
df.set_index('TIME', inplace=True)
File "/home/jingzhijiang/miniconda3/lib/python3.12/site-packages/pandas/core/frame.py", line 6129, in set_index
raise KeyError(f"None of {missing} are in the columns")
KeyError: "None of ['TIME'] are in the columns"

And my monitor/ for some of my run is empty. How should I resolve this?

Here is my captainrc file:

# Bash syntax and is sourced by the script to access the variables. Variables
# are mandatory unless marked with [brackets].

###
## Configuration parameters
###

# WORKDIR: path to directory where shared volumes will be created
WORKDIR=./workdir3

# REPEAT: number of campaigns to run per program (per fuzzer)
REPEAT=10

# [WORKER_MODE]: defines the type of CPU resources to allocate (default: 1)
# - 1: logical cores (possibly SMT-enabled)
# - 2: physical cores
# - 3: physical sockets (1 worker per CPU socket)
# WORKER_MODE=1

# [WORKERS]: number of worker threads (default: all cores)
WORKERS=100

# [WORKER_POOL]: a space-separated list of logical cores to allocate
# WORKER_POOL="1 3 5 7 9"

# [CAMPAIGN_WORKERS]: number of workers to allocate for a campaign (default: 1)
# CAMPAIGN_WORKERS=1

# [TIMEOUT]: time to run each campaign. This variable supports one-letter
# suffixes to indicate duration (s: seconds, m: minutes, h: hours, d: days)
# (default: 1m)
TIMEOUT=24h

# [POLL]: time (in seconds) between polls (default: 5)
POLL=5

# [CACHE_ON_DISK]: if set, the cache workdir is mounted on disk instead of
# in-memory (default: unset)
# CACHE_ON_DISK=1

# [NO_ARCHIVE]: if set, campaign workdirs will not be tarballed (default: unset)
# NO_ARCHIVE=1

# [TMPFS_SIZE]: the size of the tmpfs mounted volume. This only applies when
# CACHE_ON_DISK is not set (default: 50g)
# TMPFS_SIZE=16g

# [MAGMA]: path to magma root (default: ../../)
# MAGMA=/path/to/magma/

# [CANARY_MODE]: defines the mode of canaries at compile time (default: 1)
# - 1: without fixes, with canaries
# - 2: without fixes, without canaries
# - 3: with fixes, without canaries
# CANARY_MODE=3

# [ISAN]: if set, build the benchmark with ISAN/fatal canaries (default: unset)
# ISAN=1

# [HARDEN]: if set, build the benchmark with hardened canaries (default: unset)
# HARDEN=1

# [POC_EXTRACT]: if set, run the extract.sh script after the campaign is done
# (default: unset)
# POC_EXTRACT=1


###
## Campaigns to run
###

# FUZZERS: an array of fuzzer names (from magma/fuzzers/*) to evaluate
FUZZERS=(aflplusplus)

# [fuzzer_TARGETS]: an array of target names (from magma/targets/*) to fuzz with
# `fuzzer`. The `fuzzer` prefix is a fuzzer listed in the FUZZERS array
# (default: all targets)
# afl_TARGETS=(libpng libtiff libxml2)
aflplusplus_TARGETS=(php poppler sqlite3)

# [fuzzer_target_PROGRAMS]: an array of program names (from
# magma/targets/target/configrc) to use as execution drivers when fuzzing the
# `target`
# afl_libtiff_PROGRAMS=(tiffcp)

# [fuzzer_target_FUZZARGS]: a string containing fuzzer/target-specific arguments
# when fuzzing `target` with `fuzzer`
# afl_libpng_FUZZARGS="-x /magma_shared/png.dict"

# [fuzzer_CAMPAIGN_WORKERS]: overrides the global CAMPAIGN_WORKERS setting
# afl_CAMPAIGN_WORKERS=3```

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions