locust 2.31.6.dev25__tar.gz → 2.31.7.dev6__tar.gz
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-2.31.6.dev25 → locust-2.31.7.dev6}/PKG-INFO +1 -1
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/_version.py +2 -2
- locust-2.31.7.dev6/locust/contrib/mongodb.py +41 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/main.py +2 -2
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/pyproject.toml +1 -1
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/LICENSE +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/README.md +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/__init__.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/__main__.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/argument_parser.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/clients.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/contrib/__init__.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/contrib/fasthttp.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/contrib/postgres.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/debug.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/dispatch.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/env.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/event.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/exception.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/html.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/input_events.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/log.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/py.typed +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/rpc/__init__.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/rpc/protocol.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/rpc/zmqrpc.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/runners.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/shape.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/stats.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/user/__init__.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/user/inspectuser.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/user/sequential_taskset.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/user/task.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/user/users.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/user/wait_time.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/__init__.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/cache.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/date.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/deprecation.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/directory.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/exception_handler.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/load_locustfile.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/rounding.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/timespan.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/util/url.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/web.py +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/webui/dist/assets/favicon-dark.png +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/webui/dist/assets/favicon-light.png +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/webui/dist/assets/index-DQd3Odi5.js +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/webui/dist/auth.html +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/webui/dist/index.html +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/locust/webui/dist/report.html +0 -0
- {locust-2.31.6.dev25 → locust-2.31.7.dev6}/poetry.lock +0 -0
@@ -14,7 +14,7 @@ __version_tuple__: VERSION_TUPLE
|
|
14
14
|
version_tuple: VERSION_TUPLE
|
15
15
|
|
16
16
|
|
17
|
-
__version__ = "2.31.
|
17
|
+
__version__ = "2.31.7.dev6"
|
18
18
|
version = __version__
|
19
|
-
__version_tuple__ = (2, 31,
|
19
|
+
__version_tuple__ = (2, 31, 7, "dev6")
|
20
20
|
version_tuple = __version_tuple__
|
@@ -0,0 +1,41 @@
|
|
1
|
+
from locust import User, events
|
2
|
+
|
3
|
+
import time
|
4
|
+
|
5
|
+
from pymongo import MongoClient
|
6
|
+
from pymongo.errors import PyMongoError
|
7
|
+
|
8
|
+
|
9
|
+
class MongoDBClient(MongoClient):
|
10
|
+
def __init__(self, conn_string, db_name):
|
11
|
+
super().__init__(conn_string)
|
12
|
+
self.db = self.client[db_name]
|
13
|
+
|
14
|
+
def execute_query(self, collection_name, query):
|
15
|
+
start_time = time.time()
|
16
|
+
try:
|
17
|
+
collection = self.db[collection_name]
|
18
|
+
collection.find(query)
|
19
|
+
|
20
|
+
response_time = int((time.time() - start_time) * 1000)
|
21
|
+
events.request.fire(request_type="MONGODB", name="QUERY", response_time=response_time, response_length=0)
|
22
|
+
except PyMongoError as e:
|
23
|
+
response_time = int((time.time() - start_time) * 1000)
|
24
|
+
events.request.fire(
|
25
|
+
request_type="MONGODB",
|
26
|
+
name="QUERY",
|
27
|
+
response_time=response_time,
|
28
|
+
response_length=0,
|
29
|
+
exception=e,
|
30
|
+
)
|
31
|
+
|
32
|
+
|
33
|
+
class MongoDBUser(User):
|
34
|
+
abstract = True
|
35
|
+
|
36
|
+
def __init__(self, *args, **kwargs):
|
37
|
+
super().__init__(*args, **kwargs)
|
38
|
+
self.client = MongoDBClient(conn_string=self.conn_string, db_name=self.db_name)
|
39
|
+
|
40
|
+
def on_stop(self):
|
41
|
+
self.client.close()
|
@@ -199,6 +199,8 @@ def main():
|
|
199
199
|
sys.exit(1)
|
200
200
|
|
201
201
|
children = []
|
202
|
+
logger = logging.getLogger(__name__)
|
203
|
+
logger.info(f"Starting Locust {version}")
|
202
204
|
|
203
205
|
if options.processes:
|
204
206
|
if os.name == "nt":
|
@@ -298,7 +300,6 @@ def main():
|
|
298
300
|
|
299
301
|
atexit.register(kill_workers, children)
|
300
302
|
|
301
|
-
logger = logging.getLogger(__name__)
|
302
303
|
greenlet_exception_handler = greenlet_exception_logger(logger)
|
303
304
|
|
304
305
|
if options.stop_timeout:
|
@@ -686,7 +687,6 @@ See https://github.com/locustio/locust/wiki/Installation#increasing-maximum-numb
|
|
686
687
|
gevent.signal_handler(signal.SIGTERM, sig_term_handler)
|
687
688
|
|
688
689
|
try:
|
689
|
-
logger.info(f"Starting Locust {version}")
|
690
690
|
if options.class_picker:
|
691
691
|
logger.info("Locust is running with the UserClass Picker Enabled")
|
692
692
|
if options.autostart and not options.headless:
|
@@ -5,7 +5,7 @@ build-backend = "poetry_dynamic_versioning.backend"
|
|
5
5
|
[tool.poetry]
|
6
6
|
name = "locust"
|
7
7
|
description = "Developer-friendly load testing framework"
|
8
|
-
version = "2.31.
|
8
|
+
version = "2.31.7.dev6"
|
9
9
|
license = "MIT"
|
10
10
|
readme = "README.md"
|
11
11
|
authors = ["Jonatan Heyman", "Lars Holmberg"]
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|