pull/6266/head
Amber H. Brown 2019-12-02 17:42:24 +11:00
parent 8439ce5e53
commit 92d4d1342a
6 changed files with 25 additions and 15 deletions

View File

@ -1 +0,0 @@
SUITES = [("LOGGING", 1000), ("LOGGING", 10000)]

View File

@ -31,13 +31,8 @@ def setup_database():
async def make_homeserver(reactor, config=None):
def wait(time):
d = Deferred()
reactor.callLater(time, d.callback, True)
return d
cleanup_tasks = []
clock = Clock(reactor)
if not config:
@ -60,4 +55,4 @@ async def make_homeserver(reactor, config=None):
for i in cleanup_tasks:
i()
return hs, wait, cleanup
return hs, clock.sleep, cleanup

View File

@ -17,7 +17,7 @@ import pyperf
from twisted.python import reflect
from synapse.benchmarks.suites import SUITES
from synmark.suites import SUITES
if __name__ == "__main__":
@ -26,7 +26,6 @@ if __name__ == "__main__":
runner.args.inherit_environ = ["SYNAPSE_POSTGRES"]
for suite, loops in SUITES:
func = reflect.namedAny("synapse.benchmarks.suites.%s.main" % (suite.lower(),))
print(suite, loops)
runner.args.loops = loops
runner.bench_time_func(suite + "_" + str(loops), func)
runner.bench_time_func(suite.__name__ + "_" + str(loops), suite.main)

View File

@ -0,0 +1,6 @@
from . import logging
SUITES = [(logging, 1000), (logging, 10000)]

View File

@ -18,16 +18,17 @@ from contextlib import redirect_stderr
from io import StringIO
from mock import Mock
import sys
from pyperf import perf_counter
from twisted.internet.defer import ensureDeferred
from twisted.internet.protocol import ServerFactory
from twisted.logger import LogBeginner, Logger, LogPublisher, globalLogBeginner
from twisted.logger import LogBeginner, Logger, LogPublisher, globalLogBeginner, textFileLogObserver
from twisted.protocols.basic import LineOnlyReceiver
from twisted.python.failure import Failure
from synapse.benchmarks import make_homeserver, setup_database
from synmark import make_homeserver, setup_database
from synapse.logging._structured import setup_structured_logging
@ -47,6 +48,9 @@ async def _main(reactor, loops):
servers = []
print("?")
def protocol():
p = LineCounter()
servers.append(p)
@ -84,12 +88,15 @@ async def _main(reactor, loops):
hs, hs.config, log_config, logBeginner=beginner, redirect_stdlib_logging=False
)
print("hi")
# Wait for it to connect...
await logging_system._observers[0]._service.whenConnected()
# Send a bunch of useful messages
for i in range(0, loops):
logger.info("test message %s" % (i,))
print(i)
if (
len(logging_system._observers[0]._buffer)
@ -102,6 +109,7 @@ async def _main(reactor, loops):
await wait(0.01)
while servers[0].count != loops:
print(servers[0].count, loops)
await wait(0.01)
end = perf_counter() - start
@ -115,10 +123,13 @@ async def _main(reactor, loops):
def main(loops):
print("hi?")
print(loops)
setup_database()
if globalLogBeginner._temporaryObserver:
globalLogBeginner.beginLoggingTo([lambda event: None])
globalLogBeginner.beginLoggingTo([textFileLogObserver(sys.__stderr__)])
file_out = StringIO()
with redirect_stderr(file_out):

View File

@ -109,7 +109,7 @@ deps =
setenv =
SYNAPSE_POSTGRES = 1
commands =
python -m synapse.benchmarks {posargs:}
python -m synmark {posargs:}
[testenv:packaging]
skip_install=True