【问题标题】:How to output csv in locust when using as library?用作库时如何在蝗虫中输出csv?
【发布时间】:2021-01-09 11:08:36
【问题描述】:

我在我的 Python 脚本中使用 locust 作为库(来自文档中的示例),我想将统计数据输出到 CSV 文件中。我发现有一个StatsCSVFileWriter 类并创建了它,但我不知道如何“告诉”它在最后写入文件。

到目前为止,这是我的代码:

def start_locust(time_hh: int, time_mm: int, user: int, spawn_rate: int):
    # setup Environment and Runner
    env = Environment(user_classes=[User])
    env.create_local_runner()

    # CSV writer
    stats_path = os.path.join(os.getcwd(), "data")
    csv_writer = StatsCSVFileWriter(
        environment=env,
        base_filepath=stats_path,
        full_history=True,
        percentiles_to_report=[90.0, 95.0]
    )

    # start a WebUI instance
    env.create_web_ui(host="127.0.0.1", port=8089, stats_csv_writer=csv_writer)

    # start a greenlet that periodically outputs the current stats
    gevent.spawn(stats_printer(env.stats))

    # start a greenlet that saves current stats to history
    gevent.spawn(stats_history, env.runner)

    # start the test
    env.runner.start(user_count=user, spawn_rate=spawn_rate)

    # stop the runner in a given time
    time_in_seconds = (time_hh * 60 * 60) + (time_mm * 60)
    gevent.spawn_later(time_in_seconds, lambda: env.runner.quit())

    # wait for the greenlets
    env.runner.greenlet.join()

    # stop the web server for good measures
    env.web_ui.stop()

【问题讨论】:

    标签: python csv locust


    【解决方案1】:

    好像我只需要生成我创建的 CSV 编写器:

    gevent.spawn(csv_writer)

    【讨论】:

      【解决方案2】:
      # Writing all the stats to a CSV file
      gevent.spawn(csv_writer.stats_writer)
      

      【讨论】:

        猜你喜欢
        • 2014-10-13
        • 2022-11-10
        • 1970-01-01
        • 1970-01-01
        • 2020-07-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多