locust 2.36.3.dev9__py3-none-any.whl → 2.37.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
locust/_version.py CHANGED
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '2.36.3.dev9'
21
- __version_tuple__ = version_tuple = (2, 36, 3, 'dev9')
20
+ __version__ = version = '2.37.0'
21
+ __version_tuple__ = version_tuple = (2, 37, 0)
locust/argument_parser.py CHANGED
@@ -773,6 +773,12 @@ Typically ONLY these options (and --locustfile) need to be specified on workers,
773
773
  action="store_true",
774
774
  help="Prints the final stats in JSON format to stdout. Useful for parsing the results in other programs/scripts. Use together with --headless and --skip-log for an output only with the json data.",
775
775
  )
776
+ stats_group.add_argument(
777
+ "--json-file",
778
+ metavar="<filename>",
779
+ dest="json_file",
780
+ help="Prints the final stats in JSON format to file path specified.",
781
+ )
776
782
 
777
783
  log_group = parser.add_argument_group("Logging options")
778
784
  log_group.add_argument(
locust/main.py CHANGED
@@ -640,6 +640,8 @@ See https://github.com/locustio/locust/wiki/Installation#increasing-maximum-numb
640
640
  runner.quit()
641
641
  if options.json:
642
642
  stats.print_stats_json(runner.stats)
643
+ if options.json_file:
644
+ stats.save_stats_json(runner.stats, options.json_file)
643
645
  elif not isinstance(runner, locust.runners.WorkerRunner):
644
646
  stats.print_stats(runner.stats, current=False)
645
647
  stats.print_percentile_stats(runner.stats)
locust/stats.py CHANGED
@@ -820,6 +820,11 @@ def print_stats_json(stats: RequestStats) -> None:
820
820
  print(json.dumps(stats.serialize_stats(), indent=4))
821
821
 
822
822
 
823
+ def save_stats_json(stats: RequestStats, filename: str) -> None:
824
+ with open(f"{filename}.json", "w") as _:
825
+ json.dumps(stats.serialize_stats(), indent=4)
826
+
827
+
823
828
  def get_stats_summary(stats: RequestStats, current=True) -> list[str]:
824
829
  """
825
830
  stats summary will be returned as list of string
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: locust
3
- Version: 2.36.3.dev9
3
+ Version: 2.37.0
4
4
  Summary: Developer-friendly load testing framework
5
5
  Project-URL: homepage, https://locust.io/
6
6
  Project-URL: repository, https://github.com/locustio/locust
@@ -30,7 +30,7 @@ Requires-Dist: flask-login>=0.6.3
30
30
  Requires-Dist: flask>=2.0.0
31
31
  Requires-Dist: gevent<25.0.0,>=24.10.1
32
32
  Requires-Dist: geventhttpclient>=2.3.1
33
- Requires-Dist: locust-cloud>=1.20.5
33
+ Requires-Dist: locust-cloud>=1.21.1
34
34
  Requires-Dist: msgpack>=1.0.0
35
35
  Requires-Dist: psutil>=5.9.1
36
36
  Requires-Dist: pywin32; sys_platform == 'win32'
@@ -1,7 +1,7 @@
1
1
  locust/__init__.py,sha256=aWeuBPUxONjwNm1xp4v8L4BO14SuYLjscIiwJVX1Ui4,1746
2
2
  locust/__main__.py,sha256=vBQ82334kX06ImDbFlPFgiBRiLIinwNk3z8Khs6hd74,31
3
- locust/_version.py,sha256=T8XFOzMBMRdTU8U0eNY4jpt-OfcgFRcG_NKJYe0fsbQ,526
4
- locust/argument_parser.py,sha256=JDZftZ1sGknDXzYy-UrGndX7mGJUMhEjvruRjQjbNM4,33190
3
+ locust/_version.py,sha256=zJ_9oo8w7drfK7wb1eVcY65fPTQw3TbzkxJ3-mvSxs8,513
4
+ locust/argument_parser.py,sha256=ImwORtwFDe0qHP2r8kI-g0i0fbJJ8IG21hniq69kVHY,33383
5
5
  locust/clients.py,sha256=o-277lWQdpmPnoRTdf3IQVNPQT8LMFDtPtuxbLHQIIs,19286
6
6
  locust/debug.py,sha256=7CCm8bIg44uGH2wqBlo1rXBzV2VzwPicLxLewz8r5CQ,5099
7
7
  locust/dispatch.py,sha256=prdwtb9EoN4A9klgiKgWuwQmvFB8hEuFHOK6ot62AJI,16202
@@ -11,11 +11,11 @@ locust/exception.py,sha256=jGgJ32ubuf4pWdlaVOkbh2Y0LlG0_DHi-lv3ib8ppOE,1791
11
11
  locust/html.py,sha256=VjoAEZEolJ8il4HLACBlVA81Qk36fBwlDj_7ojAEFss,4132
12
12
  locust/input_events.py,sha256=lqLDB2Ax-OQ7-vtYNkGjySjfaWVobBzqf0GxRwjcLcQ,3323
13
13
  locust/log.py,sha256=5E2ZUOa3V4sfCqa-470Gle1Ik9L5nxYitsjEB9tRwE0,3455
14
- locust/main.py,sha256=wY0FexiakPzK1oR4VbSzCQn3ARPsKZHWmhrObR9JWSI,28174
14
+ locust/main.py,sha256=4gAGnHbaAUaPcEiImLuoyLeZ6LxNGL1cGWLET3e8h8Y,28271
15
15
  locust/py.typed,sha256=gkWLl8yD4mIZnNYYAIRM8g9VarLvWmTAFeUfEbxJLBw,65
16
16
  locust/runners.py,sha256=niYmGsfOpxMfVmTXGod4MYTefpaZ2wirFlhqxRw5mq4,70617
17
17
  locust/shape.py,sha256=t-lwBS8LOjWcKXNL7j2U3zroIXJ1b0fazUwpRYQOKXw,1973
18
- locust/stats.py,sha256=D2iJ7Ei1Z_e3cF5n8TdSstpewZytnSmstTjxr5c9uNw,47264
18
+ locust/stats.py,sha256=bpqpqqa-vxmKF_-qqUtiuAZkZwJbEHtjTK_cAjfOCgo,47430
19
19
  locust/web.py,sha256=I4xHIHq34F7AY-KXs9NfQ3vTqN6QX4O74KBkTUpNkhs,30471
20
20
  locust/contrib/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
21
21
  locust/contrib/fasthttp.py,sha256=BCuKG0qpBIhXdejjPSbAMSaSd6piJtuLdx96_LWbIgI,29349
@@ -51,8 +51,8 @@ locust/webui/dist/assets/graphs-light.png,sha256=7L6pOehXqCojQclzeP91l-LskFQAw_n
51
51
  locust/webui/dist/assets/index-OsbNSvrF.js,sha256=7HLGlI9Pmknt3Nqf2hfZG7drC0jyMPi9Z5-x21F_4e8,1721633
52
52
  locust/webui/dist/assets/testruns-dark.png,sha256=np6MvpgJ2gkKQ66SOmukLtjsMtHqTSr5dNfza-2XtCo,267621
53
53
  locust/webui/dist/assets/testruns-light.png,sha256=iLAxBZh3kRsfGkcB1-1KSAbFgGji43IqiUrYuJlUoPk,276839
54
- locust-2.36.3.dev9.dist-info/METADATA,sha256=bUMFm_U-M_6EtsanxzBBPRGuUUxHZFjRbqb2U1GAlCk,9403
55
- locust-2.36.3.dev9.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
56
- locust-2.36.3.dev9.dist-info/entry_points.txt,sha256=RAdt8Ku-56m7bFjmdj-MBhbF6h4NX7tVODR9QNnOg0E,44
57
- locust-2.36.3.dev9.dist-info/licenses/LICENSE,sha256=5hnz-Vpj0Z3kSCQl0LzV2hT1TLc4LHcbpBp3Cy-EuyM,1110
58
- locust-2.36.3.dev9.dist-info/RECORD,,
54
+ locust-2.37.0.dist-info/METADATA,sha256=_BO4H-3XldwUpX3UAuhA4JJC63f36vSvopv0YqEKoLg,9398
55
+ locust-2.37.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
56
+ locust-2.37.0.dist-info/entry_points.txt,sha256=RAdt8Ku-56m7bFjmdj-MBhbF6h4NX7tVODR9QNnOg0E,44
57
+ locust-2.37.0.dist-info/licenses/LICENSE,sha256=5hnz-Vpj0Z3kSCQl0LzV2hT1TLc4LHcbpBp3Cy-EuyM,1110
58
+ locust-2.37.0.dist-info/RECORD,,