Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix inflight requests metric (incorrect name & traceback) (#3413) | Amber Brown | 2018-06-20 | 1 | -3/+7 |
| | |||||
* | Merge pull request #3276 from matrix-org/dbkr/unbind | David Baker | 2018-06-11 | 1 | -2/+23 |
|\ | | | | | Remove email addresses / phone numbers from ID servers when they're removed from synapse | ||||
| * | pep8 | David Baker | 2018-06-06 | 1 | -3/+3 |
| | | |||||
| * | More doc fixes | David Baker | 2018-06-06 | 1 | -2/+2 |
| | | |||||
| * | fix pep8 | David Baker | 2018-06-05 | 1 | -3/+5 |
| | | |||||
| * | doc fixes | David Baker | 2018-06-05 | 1 | -6/+6 |
| | | |||||
| * | Docstring | David Baker | 2018-06-04 | 1 | -0/+14 |
| | | |||||
| * | Merge remote-tracking branch 'origin/develop' into dbkr/unbind | David Baker | 2018-05-24 | 1 | -3/+5 |
| |\ | |||||
| * | | Hit the 3pid unbind endpoint on deactivation | David Baker | 2018-05-23 | 1 | -2/+7 |
| | | | |||||
* | | | redact_uri in two missed log paths | Michael Telatynski | 2018-06-06 | 1 | -2/+2 |
| | | | |||||
* | | | factor out uri redaction into a method on http | Michael Telatynski | 2018-06-05 | 3 | -13/+17 |
| | | | |||||
* | | | Strip `access_token` from outgoing requests using existing regex | Michael Telatynski | 2018-06-02 | 1 | -1/+6 |
| | | | |||||
* | | | update to more consistently use seconds in any metrics or logging | Amber Brown | 2018-05-28 | 1 | -19/+19 |
| | | | |||||
* | | | update metrics to be in seconds | Amber Brown | 2018-05-28 | 2 | -13/+13 |
| | | | |||||
* | | | Merge remote-tracking branch 'origin/develop' into 3218-official-prom | Amber Brown | 2018-05-28 | 2 | -4/+6 |
|\ \ \ | |||||
| * \ \ | Merge pull request #3246 from NotAFile/py3-repr-string | Amber Brown | 2018-05-24 | 1 | -1/+1 |
| |\ \ \ | | |_|/ | |/| | | use repr, not str | ||||
| | * | | use repr, not str | Adrian Tschira | 2018-05-19 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | | Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
| * | | | Merge pull request #3243 from NotAFile/py3-six-3 | Erik Johnston | 2018-05-24 | 1 | -3/+5 |
| |\ \ \ | | |_|/ | |/| | | Replace some more comparisons with six | ||||
| | * | | Replace some more comparisons with six | Adrian Tschira | 2018-05-19 | 1 | -3/+5 |
| | |/ | | | | | | | | | | | | | | | | plus a bonus b"" string I missed last time Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | | | fixes | Amber Brown | 2018-05-23 | 1 | -7/+7 |
| | | | |||||
* | | | cleanup | Amber Brown | 2018-05-22 | 2 | -3/+6 |
| | | | |||||
* | | | cleanup pep8 errors | Amber Brown | 2018-05-22 | 1 | -28/+86 |
| | | | |||||
* | | | cleanups, self-registration | Amber Brown | 2018-05-22 | 1 | -12/+3 |
| | | | |||||
* | | | Merge remote-tracking branch 'origin/develop' into 3218-official-prom | Amber Brown | 2018-05-22 | 3 | -4/+213 |
|\| | | |||||
| * | | Don't store context | Erik Johnston | 2018-05-22 | 1 | -8/+5 |
| | | | |||||
| * | | Move in_flight_requests_count to be a callback metric | Erik Johnston | 2018-05-22 | 1 | -10/+21 |
| | | | |||||
| * | | Add in flight request metrics | Erik Johnston | 2018-05-21 | 2 | -2/+154 |
| |/ | | | | | | | | | This tracks CPU and DB usage while requests are in flight, rather than when we write the response. | ||||
| * | Merge pull request #3213 from matrix-org/rav/consent_handler | Richard van der Hoff | 2018-05-16 | 1 | -2/+74 |
| |\ | | | | | | | ConsentResource to gather policy consent from users | ||||
| | * | ConsentResource to gather policy consent from users | Richard van der Hoff | 2018-05-15 | 1 | -2/+74 |
| | | | | | | | | | | | | | | | Hopefully there are enough comments and docs in this that it makes sense on its own. | ||||
* | | | rest of the changes | Amber Brown | 2018-05-21 | 2 | -85/+25 |
| | | | |||||
* | | | replacing portions | Amber Brown | 2018-05-21 | 2 | -24/+10 |
|/ / | |||||
* / | Set Server header in SynapseRequest | Richard van der Hoff | 2018-05-10 | 3 | -13/+15 |
|/ | | | | | | | | | | | | (instead of everywhere that writes a response. Or rather, the subset of places which write responses where we haven't forgotten it). This also means that we don't have to have the mysterious version_string attribute in anything with a request handler. Unfortunately it does mean that we have to pass the version string wherever we instantiate a SynapseSite, which has been c&ped 150 times, but that is code that ought to be cleaned up anyway really. | ||||
* | Remove redundant request_handler decorator | Richard van der Hoff | 2018-05-10 | 2 | -9/+4 |
| | | | | | | This is needless complexity; we might as well use the wrapper directly. Also rename wrap_request_handler->wrap_json_request_handler. | ||||
* | Factor wrap_request_handler_with_logging out of wrap_request_handler | Richard van der Hoff | 2018-05-10 | 1 | -54/+66 |
| | | | | ... so that it can be used on non-JSON endpoints | ||||
* | Remove include_metrics param | Richard van der Hoff | 2018-05-10 | 1 | -17/+7 |
| | | | | | The metrics are now available via the request, so this is redundant and can go away at last. | ||||
* | Move outgoing_responses_counter handling to RequestMetrics | Richard van der Hoff | 2018-05-10 | 2 | -4/+2 |
| | | | | it's much neater there. | ||||
* | Bump requests_counter in wrapped_request_handler | Richard van der Hoff | 2018-05-10 | 1 | -4/+11 |
| | | | | less magic | ||||
* | Move RequestMetrics handling into SynapseRequest.processing() | Richard van der Hoff | 2018-05-10 | 2 | -24/+64 |
| | | | | | It fits quite nicely here, and opens the path to getting rid of the "include_metrics" mess. | ||||
* | Make RequestMetrics take a raw time rather than a clock | Richard van der Hoff | 2018-05-10 | 2 | -6/+6 |
| | | | | ... which is going to make it easier to move around. | ||||
* | Move request_id management into SynapseRequest | Richard van der Hoff | 2018-05-10 | 2 | -15/+25 |
| | |||||
* | Move RequestsMetrics to its own file | Richard van der Hoff | 2018-05-09 | 2 | -124/+151 |
| | | | | | | This is useful in its own right, because server.py is full of stuff; but more importantly, I want to do some refactoring that will cause a circular reference as it is. | ||||
* | Merge pull request #3182 from Half-Shot/hs/fix-twisted-shutdown | Richard van der Hoff | 2018-05-03 | 1 | -3/+8 |
|\ | | | | | Fix 'Unhandled Error' logs with Twisted 18.4 | ||||
| * | Don't abortConnection() if the transport connection has already closed. | Will Hunt | 2018-05-03 | 1 | -3/+8 |
| | | |||||
* | | add missing param to cancelled_to_request_timed_out_error | Richard van der Hoff | 2018-05-02 | 1 | -1/+1 |
| | | | | | | | | This gets two arguments, not one. | ||||
* | | Merge pull request #3154 from NotAFile/py3-stringio | Richard van der Hoff | 2018-04-30 | 1 | -2/+2 |
|\ \ | | | | | | | Replace stringIO imports with six | ||||
| * | | replace stringIO imports | Adrian Tschira | 2018-04-28 | 1 | -2/+2 |
| | | | |||||
* | | | Merge pull request #3155 from NotAFile/py3-bytes-1 | Richard van der Hoff | 2018-04-30 | 2 | -2/+2 |
|\ \ \ | | | | | | | | | more bytes strings | ||||
| * | | | more bytes strings | Adrian Tschira | 2018-04-29 | 2 | -2/+2 |
| |/ / | | | | | | | | | | Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | | | Merge pull request #3108 from NotAFile/py3-six-urlparse | Richard van der Hoff | 2018-04-30 | 1 | -2/+1 |
|\ \ \ | |/ / |/| | | Use six.moves.urlparse | ||||
| * | | Use six.moves.urlparse | Adrian Tschira | 2018-04-15 | 1 | -2/+1 |
| | | | | | | | | | | | | | | | | | | The imports were shuffled around a bunch in py3 Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | | | Backport deferred.addTimeout | Richard van der Hoff | 2018-04-27 | 3 | -6/+9 |
| | | | | | | | | | | | | Twisted 16.0 doesn't have addTimeout, so let's backport it. | ||||
* | | | Use deferred.addTimeout instead of time_bound_deferred | Richard van der Hoff | 2018-04-23 | 3 | -29/+48 |
|/ / | | | | | | | This doesn't feel like a wheel we need to reinvent. | ||||
* | | Merge pull request #3061 from NotAFile/add-some-byte-strings | Richard van der Hoff | 2018-04-09 | 2 | -5/+5 |
|\ \ | | | | | | | Add b prefixes to some strings that are bytes in py3 | ||||
| * | | Add b prefixes to some strings that are bytes in py3 | Adrian Tschira | 2018-04-04 | 2 | -5/+5 |
| | | | | | | | | | | | | | | | | | | This has no effect on python2 Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | | | Merge pull request #3016 from silkeh/improve-service-lookups | Richard van der Hoff | 2018-04-09 | 1 | -95/+8 |
|\ \ \ | | | | | | | | | Improve handling of SRV records for federation connections | ||||
| * | | | Remove address resolution of hosts in SRV records | Silke | 2018-04-04 | 1 | -95/+8 |
| |/ / | | | | | | | | | | Signed-off-by: Silke Hofstra <silke@slxh.eu> | ||||
* | | | Revert "Merge pull request #3066 from matrix-org/rav/remove_redundant_metrics" | Richard van der Hoff | 2018-04-09 | 1 | -0/+26 |
| | | | | | | | | | | | | | | | | | | | | | We aren't ready to release this yet, so I'm reverting it for now. This reverts commit d1679a4ed7947b0814e0f2af9b888a16c588f1a1, reversing changes made to e089100c6231541c446e37e157dec8feed02d283. | ||||
* | | | Add response size metrics | Erik Johnston | 2018-04-06 | 1 | -0/+7 |
| | | | |||||
* | | | use PUT instead of POST for federating groups/m.join_policy | Krombel | 2018-04-06 | 1 | -1/+5 |
| | | | |||||
* | | | Remove redundant metrics which were deprecated in 0.27.0. | Richard van der Hoff | 2018-04-04 | 1 | -26/+0 |
|/ / | |||||
* | | Add Cache-Control headers to all JSON APIs | Erik Johnston | 2018-03-21 | 1 | -0/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | It is especially important that sync requests don't get cached, as if a sync returns the same token given then the client will call sync with the same parameters again. If the previous response was cached it will get reused, resulting in the client tight looping making the same request and never making any progress. In general, clients will expect to get up to date data when requesting APIs, and so its safer to do a blanket no cache policy than only whitelisting APIs that we know will break things if they get cached. | ||||
* | | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2018-03-19 | 1 | -2/+0 |
|\ \ | |||||
| * | | Replace ujson with simplejson | Erik Johnston | 2018-03-15 | 1 | -3/+2 |
| | | | |||||
* | | | Replace some ujson with simplejson to make it work | Erik Johnston | 2018-03-16 | 1 | -1/+2 |
| | | | |||||
* | | | Add some docstrings to help figure this out | Richard van der Hoff | 2018-03-09 | 1 | -2/+26 |
| | | | |||||
* | | | Add a metric which increments when a request is received | Richard van der Hoff | 2018-03-09 | 1 | -2/+10 |
| | | | | | | | | | | | | | | | | | | It's useful to know when there are peaks in incoming requests - which isn't quite the same as there being peaks in outgoing responses, due to the time taken to handle requests. | ||||
* | | | refactor JsonResource | Richard van der Hoff | 2018-03-09 | 1 | -32/+46 |
| | | | | | | | | | | | | | | | rephrase the OPTIONS and unrecognised request handling so that they look similar to the common flow. | ||||
* | | | Merge pull request #2858 from matrix-org/rav/purge_updates | Richard van der Hoff | 2018-02-09 | 1 | -3/+15 |
|\ \ \ | | | | | | | | | delete_local_events for purge_room_history | ||||
| * | | | delete_local_events for purge_history | Richard van der Hoff | 2018-02-09 | 1 | -3/+15 |
| | | | | | | | | | | | | | | | | Add a flag which makes the purger delete local events | ||||
* | | | | Merge pull request #2838 from matrix-org/rav/fix_logging_on_dns_fail | Richard van der Hoff | 2018-01-31 | 1 | -2/+1 |
|\ \ \ \ | | | | | | | | | | | Remove spurious log argument | ||||
| * | | | | Remove spurious log argument | Richard van der Hoff | 2018-01-30 | 1 | -2/+1 |
| | | | | | | | | | | | | | | | | | | | | ... which would cause scary-looking and unhelpful errors in the log on dns fail | ||||
* | | | | | Merge pull request #2817 from matrix-org/rav/http_conn_pool | Richard van der Hoff | 2018-01-31 | 1 | -1/+13 |
|\ \ \ \ \ | |/ / / / |/| | | | | Use a connection pool for the SimpleHttpClient | ||||
| * | | | | Increase http conn pool size | Richard van der Hoff | 2018-01-29 | 1 | -1/+6 |
| |/ / / | |||||
| * | | | Use a connection pool for the SimpleHttpClient | Richard van der Hoff | 2018-01-20 | 1 | -1/+8 |
| | | | | | | | | | | | | | | | | | | | | In particular I hope this will help the pusher, which makes many requests to sygnal, and is currently negotiating SSL for each one. | ||||
* | | | | Add federation_domain_whitelist option (#2820) | Matthew Hodgson | 2018-01-22 | 1 | -1/+27 |
|/ / / | | | | | | | | | | | | | | | | Add federation_domain_whitelist gives a way to restrict which domains your HS is allowed to federate with. useful mainly for gracefully preventing a private but internet-connected HS from trying to federate to the wider public Matrix network | ||||
* | | | Merge remote-tracking branch 'origin/develop' into rav/track_db_scheduling | Richard van der Hoff | 2018-01-17 | 1 | -9/+9 |
|\ \ \ | |||||
| * \ \ | Merge pull request #2793 from matrix-org/rav/db_txn_time_in_millis | Richard van der Hoff | 2018-01-17 | 2 | -4/+6 |
| |\ \ \ | | | | | | | | | | | Track db txn time in millisecs | ||||
| * | | | | Fix 'NoneType' object has no attribute 'writeHeaders' | Richard van der Hoff | 2018-01-16 | 1 | -9/+9 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid throwing a (harmless) exception when we try to write an error response to an http request where the client has disconnected. This comes up as a CRITICAL error in the logs which tends to mislead people into thinking there's an actual problem | ||||
* | | | | | Track DB scheduling delay per-request | Richard van der Hoff | 2018-01-16 | 2 | -1/+10 |
| |/ / / |/| | | | | | | | | | | | | | | | | | | | For each request, track the amount of time spent waiting for a db connection. This entails adding it to the LoggingContext and we may as well add metrics for it while we are passing. | ||||
* | | | | Track db txn time in millisecs | Richard van der Hoff | 2018-01-16 | 2 | -4/+6 |
|/ / / | | | | | | | | | | ... to reduce the amount of floating-point foo we do. | ||||
* | | | Reorganise request and block metrics | Richard van der Hoff | 2018-01-15 | 1 | -14/+42 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to circumvent the number of duplicate foo:count metrics increasing without bounds, it's time for a rearrangement. The following are all deprecated, and replaced with synapse_util_metrics_block_count: synapse_util_metrics_block_timer:count synapse_util_metrics_block_ru_utime:count synapse_util_metrics_block_ru_stime:count synapse_util_metrics_block_db_txn_count:count synapse_util_metrics_block_db_txn_duration:count The following are all deprecated, and replaced with synapse_http_server_response_count: synapse_http_server_requests synapse_http_server_response_time:count synapse_http_server_response_ru_utime:count synapse_http_server_response_ru_stime:count synapse_http_server_response_db_txn_count:count synapse_http_server_response_db_txn_duration:count The following are renamed (the old metrics are kept for now, but deprecated): synapse_util_metrics_block_timer:total -> synapse_util_metrics_block_time_seconds synapse_util_metrics_block_ru_utime:total -> synapse_util_metrics_block_ru_utime_seconds synapse_util_metrics_block_ru_stime:total -> synapse_util_metrics_block_ru_stime_seconds synapse_util_metrics_block_db_txn_count:total -> synapse_util_metrics_block_db_txn_count synapse_util_metrics_block_db_txn_duration:total -> synapse_util_metrics_block_db_txn_duration_seconds synapse_http_server_response_time:total -> synapse_http_server_response_time_seconds synapse_http_server_response_ru_utime:total -> synapse_http_server_response_ru_utime_seconds synapse_http_server_response_ru_stime:total -> synapse_http_server_response_ru_stime_seconds synapse_http_server_response_db_txn_count:total -> synapse_http_server_response_db_txn_count synapse_http_server_response_db_txn_duration:total synapse_http_server_response_db_txn_duration_seconds | ||||
* | | | Update http request metrics before calling servlet | Richard van der Hoff | 2018-01-09 | 1 | -11/+19 |
|/ / | | | | | | | | | Make sure that we set the servlet name in the metrics object *before* calling the servlet, in case the servlet throws an exception. | ||||
* | | Merge pull request #2711 from matrix-org/rav/fix_dns_errhandler | Richard van der Hoff | 2017-11-27 | 1 | -2/+4 |
|\ \ | | | | | | | Fix error handling on dns lookup | ||||
| * | | Fix error handling on dns lookup | Richard van der Hoff | 2017-11-24 | 1 | -2/+4 |
| | | | | | | | | | | | | | | | | | | pass the right arguments to the errback handler Fixes "TypeError('eb() takes exactly 2 arguments (1 given)',)" | ||||
* | | | Improve tracebacks on exceptions | Richard van der Hoff | 2017-11-27 | 1 | -3/+9 |
|/ / | | | | | | | | | Use failure.Failure to recover our failure, which will give us a useful stacktrace, unlike the rethrown exception. | ||||
* | | Fix 500 on invalid utf-8 in request | Richard van der Hoff | 2017-11-10 | 1 | -1/+2 |
| | | | | | | | | | | | | | | | | | | If somebody sends us a request where the the body is invalid utf-8, we should return a 400 rather than a 500. (json.loads throws a UnicodeError in this situation) We might as well catch all Exceptions here: it seems very unlikely that we would get a request that *isn't caused by invalid json. | ||||
* | | Add a hook for custom rest endpoints | Richard van der Hoff | 2017-11-02 | 1 | -0/+55 |
| | | | | | | | | | | Let the user specify custom modules which can be used for implementing extra endpoints. | ||||
* | | Merge pull request #2586 from matrix-org/rav/frontend_proxy_auth_header | Richard van der Hoff | 2017-10-27 | 1 | -28/+80 |
|\ \ | | | | | | | Front-end proxy: pass through auth header | ||||
| * | | Docstring for post_urlencoded_get_json | Richard van der Hoff | 2017-10-27 | 1 | -0/+11 |
| | | | |||||
| * | | SimpleHTTPClient: add support for headers | Richard van der Hoff | 2017-10-26 | 1 | -28/+69 |
| | | | | | | | | | | | | Sometimes we need to pass headers into these methods | ||||
* | | | Fix logcontext leaks in httpclient | Richard van der Hoff | 2017-10-26 | 1 | -10/+9 |
|/ / | | | | | | | `preserve_context_over_fn` is borked | ||||
* | | replace 'except:' with 'except Exception:' | Richard van der Hoff | 2017-10-23 | 4 | -6/+6 |
| | | | | | | | | what could possibly go wrong | ||||
* | | Merge branch 'develop' into erikj/groups_merged | David Baker | 2017-10-02 | 2 | -27/+114 |
|\ \ | |||||
| * | | Improve logging of failures in matrixfederationclient | Richard van der Hoff | 2017-09-28 | 1 | -7/+6 |
| | | | | | | | | | | | | | | | | | | * don't log exception types twice * not all exceptions have a meaningful 'message'. Use the repr rather than attempting to build a string ourselves. | ||||
| * | | Handle SERVFAILs when doing AAAA lookups for federation (#2477) | Richard van der Hoff | 2017-09-28 | 1 | -5/+17 |
| | | | | | | | | | | | | | | | ... to cope with people with broken dnssec setups, mostly | ||||
| * | | Do an AAAA lookup on SRV record targets (#2462) | Richard van der Hoff | 2017-09-22 | 1 | -20/+96 |
| | | | | | | | | | | | | | | | Support SRV records which point at AAAA records, as well as A records. Fixes https://github.com/matrix-org/synapse/issues/2405 | ||||
* | | | Add DELETE | Erik Johnston | 2017-07-18 | 1 | -0/+46 |
| | | | |||||
* | | | Add 'args' param to post_json | Erik Johnston | 2017-07-18 | 1 | -9/+15 |
| | | | |||||
* | | | Initial group server implementation | Erik Johnston | 2017-07-10 | 1 | -1/+3 |
|/ / | |||||
* | | allow Authorization header which handling got implemented in #1098 | Krombel | 2017-06-16 | 1 | -1/+1 |
| | | | | | | | | Signed-off-by: Matthias Kesler <krombel@krombel.de> | ||||
* | | Remember how twisted works | Kegan Dougal | 2017-05-05 | 1 | -2/+2 |
| | | |||||
* | | Include the clock | Kegan Dougal | 2017-05-05 | 1 | -0/+1 |
| | | |||||
* | | Rewrite SimpleHttpClient.request to include timeouts | Kegan Dougal | 2017-05-05 | 1 | -13/+19 |
| | | | | | | | | Fixes #2191 | ||||
* | | No need for the exception variable | David Baker | 2017-05-03 | 1 | -1/+1 |
| | | |||||
* | | List caught expection types | David Baker | 2017-05-03 | 1 | -1/+1 |
| | | |||||
* | | Remove debugging | David Baker | 2017-04-26 | 1 | -2/+1 |
| | | |||||
* | | Merge remote-tracking branch 'origin/develop' into ↵ | David Baker | 2017-04-26 | 1 | -7/+14 |
|\ \ | | | | | | | | | | dbkr/http_request_propagate_error | ||||
| * | | Fix some lies, and other clarifications, in docstrings | Richard van der Hoff | 2017-04-21 | 1 | -7/+14 |
| | | | | | | | | | | | | | | | The documentation on get_json has been wrong ever since the very first commit to synapse... | ||||
* | | | Fix get_json | David Baker | 2017-04-26 | 1 | -5/+4 |
| | | | |||||
* | | | Use CodeMessageException subclass instead | David Baker | 2017-04-25 | 1 | -44/+20 |
| | | | | | | | | | | | | | | | Parse json errors from get_json client methods and throw special errors. | ||||
* | | | Need the HTTP status code | David Baker | 2017-04-21 | 1 | -5/+5 |
| | | | |||||
* | | | Do the same for get_json | David Baker | 2017-04-21 | 1 | -8/+21 |
| | | | |||||
* | | | Don't error for 3xx responses | David Baker | 2017-04-21 | 1 | -1/+1 |
| | | | |||||
* | | | Propagate errors sensibly from proxied IS requests | David Baker | 2017-04-21 | 1 | -0/+30 |
|/ / | | | | | | | | | | | When we're proxying Matrix endpoints, parse out Matrix error responses and turn them into SynapseErrors so they can be propagated sensibly upstream. | ||||
* | | try not to drop context after federation requests | Richard van der Hoff | 2017-03-23 | 1 | -12/+16 |
| | | | | | | | | | | | | | | preserve_context_over_fn uses a ContextPreservingDeferred, which only restores context for the duration of its callbacks, which isn't really correct, and means that subsequent operations in the same request can end up without their logcontexts. | ||||
* | | Ignore backoff history for invites, aliases, and roomdirs | Richard van der Hoff | 2017-03-23 | 1 | -7/+26 |
| | | | | | | | | | | Add a param to the federation client which lets us ignore historical backoff data for federation queries, and set it for a handful of operations. | ||||
* | | push federation retry limiter down to matrixfederationclient | Richard van der Hoff | 2017-03-23 | 1 | -101/+127 |
| | | | | | | | | | | rather than having to instrument everywhere we make a federation call, make the MatrixFederationHttpClient manage the retry limiter. | ||||
* | | MatrixFederationHttpClient: clean up | Richard van der Hoff | 2017-03-23 | 1 | -17/+24 |
| | | | | | | | | | | rename _create_request to _request, and push ascii-encoding of `destination` and `path` down into it | ||||
* | | Merge pull request #1994 from matrix-org/dbkr/msisdn_signin_2 | Erik Johnston | 2017-03-15 | 1 | -0/+10 |
|\ \ | | | | | | | Phone number registration / login support v2 | ||||
| * | | Support registration / login with phone number | David Baker | 2017-03-13 | 1 | -0/+10 |
| | | | | | | | | | | | | Changes from https://github.com/matrix-org/synapse/pull/1971 | ||||
* | | | Fix routing loop when fetching remote media | Richard van der Hoff | 2017-03-13 | 1 | -3/+12 |
|/ / | | | | | | | | | | | | | | | | | | | | | When we proxy a media request to a remote server, add a query-param, which will tell the remote server to 404 if it doesn't recognise the server_name. This should fix a routing loop where the server keeps forwarding back to itself. Also improves the error handling on remote media fetches, so that we don't always return a rather obscure 502. | ||||
* | | Revert "Support registration & login with phone number" | Erik Johnston | 2017-03-13 | 1 | -10/+0 |
| | | |||||
* | | Refector out assert_params_in_request | David Baker | 2017-03-08 | 1 | -0/+10 |
|/ | | | | and replace requestEmailToken where we meant requestMsisdnToken | ||||
* | Merge branch 'release-v0.18.6' into develop | Mark Haines | 2016-12-29 | 2 | -7/+70 |
|\ | |||||
| * | Manually abort the underlying TLS connection. | Mark Haines | 2016-12-29 | 1 | -2/+10 |
| | | | | | | | | | | | | | | | | | | | | | | | | The abort() method calls loseConnection() which tries to shutdown the TLS connection cleanly. We now call abortConnection() directly which should promptly close both the TLS connection and the underlying TCP connection. I also added some TODO markers to consider cancelling the old previous timeout rather than checking time.time(). But given how urgently we want to get this code released I'd rather leave the existing code with the duplicate timeouts and the time.time() check. | ||||
| * | Respect long_retries param and default to off | Erik Johnston | 2016-12-29 | 1 | -2/+2 |
| | | |||||
| * | Spelling and comments | Erik Johnston | 2016-12-29 | 1 | -4/+6 |
| | | |||||
| * | Clean up | Erik Johnston | 2016-12-29 | 2 | -7/+4 |
| | | |||||
| * | Wrap connections in an N minute timeout to ensure they get reaped correctly | Erik Johnston | 2016-12-29 | 2 | -5/+61 |
| | | |||||
* | | Merge pull request #1696 from kyrias/ipv6 | Matthew Hodgson | 2016-12-19 | 2 | -23/+22 |
|\ \ | |/ |/| | IPv6 support | ||||
| * | Remove spurious newline | Johannes Löthberg | 2016-12-12 | 1 | -1/+0 |
| | | | | | | | | | | | | Apparently I just removed the spaces instead... Signed-off-by: Johannes Löthberg <johannes@kyriasis.com> | ||||
| * | Fixup for #1689 and #1690 | Johannes Löthberg | 2016-12-12 | 2 | -8/+13 |
| | | | | | | | | Signed-off-by: Johannes Löthberg <johannes@kyriasis.com> | ||||
| * | IPv6 support for endpoint.py | Glyph | 2016-12-11 | 1 | -4/+4 |
| | | | | | | Similar to https://github.com/matrix-org/synapse/pull/1689, but for endpoint.py | ||||
| * | IPv6 support for client.py | Glyph | 2016-12-11 | 1 | -16/+11 |
| | | | | | | This is an (untested) general sketch of how to use wrapClientTLS to implement TLS over IPv6, as well as faster connections over IPv4. | ||||
* | | Add new API appservice specific public room list | Erik Johnston | 2016-12-06 | 1 | -2/+6 |
|/ | |||||
* | More intelligent Content-Type parsing | Richard van der Hoff | 2016-11-30 | 1 | -18/+30 |
| | | | | | Content-Type is allowed to contain options (`; charset=utf-8`, for instance). We should allow that. | ||||
* | Set CORs headers on responses from the media repo | Mark Haines | 2016-11-02 | 1 | -5/+18 |
| | |||||
* | Pass since/from parameters over federation | Erik Johnston | 2016-09-15 | 1 | -4/+14 |
| | |||||
* | Add a timeout parameter for end2end key queries. | Mark Haines | 2016-09-12 | 1 | -2/+9 |
| | | | | | | | | | | Add a timeout parameter for controlling how long synapse will wait for responses from remote servers. For servers that fail include how they failed to make it easier to debug. Fetch keys from different servers in parallel rather than in series. Set the default timeout to 10s. | ||||
* | Add exception logging. Fix typo | Erik Johnston | 2016-08-22 | 1 | -3/+3 |
| | |||||
* | Allow request handlers to override metric name | Erik Johnston | 2016-08-22 | 1 | -21/+31 |
| | |||||
* | Use top level measure | Erik Johnston | 2016-08-22 | 1 | -15/+1 |
| | |||||
* | Add a top level measure | Erik Johnston | 2016-08-19 | 1 | -45/+46 |
| | |||||
* | Remove redundant measure | Erik Johnston | 2016-08-19 | 1 | -35/+34 |
| | |||||
* | Measure http.server render | Erik Johnston | 2016-08-19 | 1 | -28/+30 |
| | |||||
* | Clean up TransactionQueue | Erik Johnston | 2016-08-10 | 1 | -3/+1 |
| | |||||
* | Log when adding listeners | Richard van der Hoff | 2016-07-25 | 1 | -0/+1 |
| | |||||
* | Work around TLS bug in twisted | Richard van der Hoff | 2016-06-15 | 1 | -2/+26 |
| | | | | | | Wrap up twisted's FileBodyProducer to work around https://twistedmatrix.com/trac/ticket/8473. Hopefully this fixes https://matrix.org/jira/browse/SYN-700. | ||||
* | Clean up the blacklist/whitelist handling. | Mark Haines | 2016-05-16 | 1 | -2/+1 |
| | | | | | | | Always set the config key with an empty list, even if a list isn't specified. This means that the codepaths are the same for both the empty list and for a missing key. Since the behaviour is the same for both cases this makes the code somewhat easier to reason about. | ||||
* | add a url_preview_ip_range_whitelist config param so we can whitelist the ↵ | Matthew Hodgson | 2016-05-01 | 2 | -7/+13 |
| | | | | matrix.org IP space | ||||
* | Fix more typos in per-request metrics | Mark Haines | 2016-04-28 | 1 | -4/+5 |
| | |||||
* | Fix typo in request metrics | Mark Haines | 2016-04-28 | 1 | -1/+1 |
| | |||||
* | Add a comment explaining why automatic metric reporting is disabled for ↵ | Mark Haines | 2016-04-28 | 1 | -0/+4 |
| | | | | JsonResource | ||||
* | Check if report_metrics is True | Mark Haines | 2016-04-28 | 1 | -3/+4 |
| | |||||
* | Report per request metrics for all of the things using request_handler | Mark Haines | 2016-04-28 | 1 | -38/+63 |
| | |||||
* | Move SynapseSite to its own file | Mark Haines | 2016-04-22 | 1 | -0/+146 |
| | |||||
* | Make InsecureInterceptableContextFactory work with SpiderEndpoint | Erik Johnston | 2016-04-19 | 1 | -1/+4 |
| | |||||
* | Merge pull request #688 from matrix-org/matthew/preview_urls | Matthew Hodgson | 2016-04-11 | 2 | -5/+197 |
|\ | | | | | URL previewing support | ||||
| * | actually throw meaningful errors | Matthew Hodgson | 2016-04-08 | 1 | -5/+16 |
| | | |||||
| * | Add url_preview_enabled config option to turn on/off preview_url endpoint. ↵ | Matthew Hodgson | 2016-04-08 | 2 | -7/+72 |
| | | | | | | | | | | | | | | | | | | defaults to off. Add url_preview_ip_range_blacklist to let admins specify internal IP ranges that must not be spidered. Add url_preview_url_blacklist to let admins specify URL patterns that must not be spidered. Implement a custom SpiderEndpoint and associated support classes to implement url_preview_ip_range_blacklist Add commentary and generally address PR feedback | ||||
| * | Merge branch 'develop' into matthew/preview_urls | Matthew Hodgson | 2016-04-04 | 1 | -30/+51 |
| |\ | |||||
| * | | pep8 | Matthew Hodgson | 2016-04-03 | 1 | -4/+10 |
| | | | |||||
| * | | add a persistent cache of URL lookups, and fix up the in-memory one to work | Matthew Hodgson | 2016-04-03 | 1 | -3/+3 |
| | | | |||||
| * | | support gzip compression, and don't pass through error msgs | Matthew Hodgson | 2016-04-02 | 1 | -3/+8 |
| | | | |||||
| * | | handle spidered relative images correctly | Matthew Hodgson | 2016-03-31 | 1 | -1/+1 |
| | | | |||||
| * | | sync in changes from matrixfederationclient | Matthew Hodgson | 2016-03-31 | 1 | -2/+6 |
| | | | |||||
| * | | handle requests with missing content-length headers (e.g. YouTube) | Matthew Hodgson | 2016-03-31 | 1 | -7/+26 |
| | | | |||||
| * | | implement redirects | Matthew Hodgson | 2016-03-29 | 1 | -3/+3 |
| | | | |||||
| * | | make it work | Matthew Hodgson | 2016-03-29 | 1 | -1/+2 |
| | | | |||||
| * | | make it build | Matthew Hodgson | 2016-03-29 | 1 | -1/+1 |
| | | | |||||
| * | | Merge branch 'develop' into matthew/preview_urls | Matthew Hodgson | 2016-03-29 | 1 | -4/+6 |
| |\ \ | |||||
| * \ \ | Merge branch 'develop' into matthew/preview_urls | Matthew Hodgson | 2016-03-27 | 4 | -27/+159 |
| |\ \ \ | |||||
| * | | | | initial WIP of a tentative preview_url endpoint - incomplete, untested, ↵ | Matthew Hodgson | 2016-01-24 | 1 | -0/+81 |
| | | | | | | | | | | | | | | | | | | | | experimental, etc. just putting it here for safekeeping for now | ||||
* | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/dns_cache | Erik Johnston | 2016-04-07 | 1 | -30/+51 |
|\ \ \ \ \ | | |_|_|/ | |/| | | | |||||
| * | | | | Use google style doc strings. | Mark Haines | 2016-04-01 | 1 | -30/+51 |
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | pycharm supports them so there is no need to use the other format. Might as well convert the existing strings to reduce the risk of people accidentally cargo culting the wrong doc string format. | ||||
* | | | | Allow clock to be passed in to func | Erik Johnston | 2016-03-31 | 1 | -3/+3 |
| | | | | |||||
* | | | | Read from DNS cache if within TTL | Erik Johnston | 2016-03-31 | 1 | -16/+23 |
|/ / / | |||||
* | / | Intern all the things | Erik Johnston | 2016-03-23 | 1 | -4/+6 |
| |/ |/| | |||||
* | | Fix regression where synapse checked whether push rules were valid JSON ↵ | Mark Haines | 2016-03-14 | 1 | -4/+17 |
| | | | | | | | | before the compatibility hack that handled clients sending invalid JSON | ||||
* | | Use parse_json_object_from_request to parse JSON out of request bodies | Mark Haines | 2016-03-11 | 1 | -5/+12 |
| | | |||||
* | | Add a parse_json_object function | Mark Haines | 2016-03-09 | 1 | -5/+65 |
| | | | | | | | | | | to deduplicate all the copy+pasted _parse_json functions. Also document the parse_.* functions. | ||||
* | | pep8 | David Baker | 2016-03-08 | 1 | -2/+5 |
| | | |||||
* | | Encode unicode objects given to post_urlencode* otherwise urllib.urlencode ↵ | David Baker | 2016-03-08 | 1 | -2/+12 |
| | | | | | | | | chokes. | ||||
* | | Catch the exceptions thrown by twisted when you write to a closed connection | Mark Haines | 2016-02-12 | 1 | -1/+20 |
| | | |||||
* | | Fix up logcontexts | Erik Johnston | 2016-02-08 | 1 | -3/+2 |
| | | |||||
* | | Add metrics to pushers | Erik Johnston | 2016-02-08 | 1 | -0/+10 |
| | | |||||
* | | Allowing tagging log contexts | Erik Johnston | 2016-02-03 | 1 | -15/+26 |
| | | |||||
* | | Fix flake8 warnings for new flake8 | Daniel Wagner-Hall | 2016-02-02 | 1 | -1/+1 |
|/ | |||||
* | Fix AttributeError | Erik Johnston | 2016-01-21 | 1 | -1/+1 |
| | |||||
* | Cache dns lookups, and use the cache if we fail to lookup servers later | Erik Johnston | 2016-01-20 | 1 | -30/+71 |
| | |||||
* | copyrights | Matthew Hodgson | 2016-01-07 | 6 | -6/+6 |
| | |||||
* | Fix typo | Daniel Wagner-Hall | 2015-12-16 | 1 | -1/+1 |
| | |||||
* | Include errcode on Internal Server Error | Daniel Wagner-Hall | 2015-12-14 | 1 | -2/+5 |
| | |||||
* | Track the time spent in the database per request. | Mark Haines | 2015-12-07 | 1 | -0/+15 |
| | | | | and track the number of transactions that request started. | ||||
* | Add metrics to track the cpu on the main thread consumed by each type of request | Mark Haines | 2015-12-04 | 1 | -0/+17 |
| | |||||
* | Host /unstable and /r0 versions of r0 APIs | Daniel Wagner-Hall | 2015-12-01 | 2 | -10/+11 |
| | |||||
* | Fix typo | Erik Johnston | 2015-11-20 | 1 | -2/+2 |
| | |||||
* | Don't limit connections to perspective servers | Erik Johnston | 2015-11-20 | 1 | -1/+4 |
| | |||||
* | Use min and not max to set an upper bound on retry interval | Erik Johnston | 2015-11-20 | 1 | -2/+2 |
| | |||||
* | Add comment | Erik Johnston | 2015-11-17 | 1 | -0/+2 |
| | |||||
* | Only retry federation requests for a long time for background requests | Erik Johnston | 2015-11-17 | 1 | -7/+19 |
| | |||||
* | Implement required method 'resumeProducing' | Erik Johnston | 2015-11-17 | 1 | -0/+3 |
| | |||||
* | Slightly more aggressive retry timers at HTTP level | Erik Johnston | 2015-11-17 | 1 | -2/+3 |
| | |||||
* | Retry dead servers a lot less often | Erik Johnston | 2015-11-02 | 1 | -2/+8 |
| | |||||
* | Verify third party ID server certificates | Daniel Wagner-Hall | 2015-10-16 | 1 | -4/+0 |
| | |||||
* | Fix previous merge to s/version_string/user_agent/ | Erik Johnston | 2015-10-10 | 1 | -2/+2 |
| | |||||
* | Add get_raw method to SimpleHttpClient, use this in CAS auth rather than ↵ | Steven Hammerton | 2015-10-10 | 1 | -19/+36 |
| | | | | requests | ||||
* | Use space not dash as delimiter | Daniel Wagner-Hall | 2015-10-06 | 1 | -1/+1 |
| | |||||
* | Use space not dash as delimiter | Daniel Wagner-Hall | 2015-10-06 | 1 | -1/+1 |
| | |||||
* | Preserve version string in user agent | Daniel Wagner-Hall | 2015-10-05 | 1 | -3/+3 |
| | |||||
* | Allow synapse's useragent to be customized | Daniel Wagner-Hall | 2015-10-02 | 1 | -6/+9 |
| | | | | | This will allow me to write tests which verify which server made HTTP requests in a federation context. | ||||
* | Rename context factory | Daniel Wagner-Hall | 2015-09-15 | 1 | -3/+3 |
| | | | | Mjark is officially no fun. | ||||
* | Fix random formatting | Daniel Wagner-Hall | 2015-09-09 | 1 | -1/+2 |
| | |||||
* | Allow configuration to ignore invalid SSL certs | Daniel Wagner-Hall | 2015-09-09 | 2 | -4/+25 |
| | | | | | This will be useful for sytest, and sytest only, hence the aggressive config key name. | ||||
* | Remove syutil dependency in favour of smaller single-purpose libraries | Mark Haines | 2015-08-24 | 3 | -9/+10 |
| | |||||
* | PEP8 | Erik Johnston | 2015-08-13 | 1 | -1/+0 |
| | |||||
* | Merge branch 'develop' into markjh/twisted-15 | Mark Haines | 2015-08-12 | 3 | -123/+130 |
|\ | | | | | | | | | Conflicts: synapse/http/matrixfederationclient.py | ||||
| * | Don't 500 if a group is missing from the regex | Mark Haines | 2015-07-06 | 1 | -1/+1 |
| | | |||||
| * | Fix log context when sending requests | Erik Johnston | 2015-06-19 | 2 | -33/+35 |
| | | |||||
| * | Remove stale debug lines | Erik Johnston | 2015-06-19 | 1 | -10/+0 |
| | | |||||
| * | Add IDs to outbound transactions | Erik Johnston | 2015-06-19 | 1 | -53/+71 |
| | | |||||
| * | Disable twisted access logging. Move access logging to SynapseRequest object | Erik Johnston | 2015-06-15 | 1 | -58/+32 |
| | | |||||
| * | Log more when we have processed the request | Erik Johnston | 2015-06-15 | 1 | -2/+12 |
| | | |||||
| * | Create SynapseRequest that overrides __repr__ to not print access_token | Erik Johnston | 2015-06-15 | 1 | -11/+3 |
| | | |||||
| * | Make http.server request logging more verbose, but redact access_tokens | Erik Johnston | 2015-06-15 | 1 | -2/+12 |
| | | |||||
| * | Log requests and responses sent via http.client | Erik Johnston | 2015-06-15 | 1 | -3/+15 |
| | | |||||
* | | Merge branch 'develop' into markjh/twisted-15 | Mark Haines | 2015-06-01 | 1 | -4/+12 |
|\| | | | | | | | | | Conflicts: synapse/python_dependencies.py | ||||
| * | Remove log line | Erik Johnston | 2015-05-29 | 1 | -1/+0 |
| | | |||||
| * | Add config option to turn off freezing events. Use new encode_json api and ↵ | Erik Johnston | 2015-05-29 | 1 | -4/+13 |
| | | | | | | | | ujson.loads | ||||
* | | Use Twisted-15.2.1, Use Agent.usingEndpointFactory rather than implement our ↵ | Mark Haines | 2015-06-01 | 1 | -50/+25 |
|/ | | | | own Agent | ||||
* | Correctly pass connection pool parameter | Erik Johnston | 2015-05-28 | 2 | -2/+2 |
| | |||||
* | Up maxPersistentPerHost count | Erik Johnston | 2015-05-28 | 2 | -0/+2 |
| | |||||
* | Add connection pooling to SimpleHttpClient | Erik Johnston | 2015-05-28 | 1 | -2/+4 |
| | |||||
* | Use connection pool for federation connections | Erik Johnston | 2015-05-28 | 1 | -2/+3 |
| | |||||
* | Add doc strings | Erik Johnston | 2015-05-22 | 1 | -0/+3 |
| | |||||
* | Add a timeout param to get_event | Erik Johnston | 2015-05-19 | 1 | -5/+8 |
| | |||||
* | Fix up leak. Add warnings. | Erik Johnston | 2015-05-08 | 1 | -2/+4 |
| | |||||
* | Change the way we do logging contexts so that they survive divergences | Erik Johnston | 2015-05-08 | 2 | -17/+21 |
| | |||||
* | Unused import | David Baker | 2015-04-30 | 1 | -1/+1 |
| | |||||
* | Doesn't look like this is used anymore | David Baker | 2015-04-30 | 1 | -13/+0 |
| | |||||
* | Merge branch 'develop' into csauth | David Baker | 2015-04-24 | 2 | -152/+179 |
|\ | | | | | | | | | Conflicts: synapse/http/server.py | ||||
| * | Combine the request wrappers in rest/media/v1 and http/server into a single ↵ | Mark Haines | 2015-04-21 | 2 | -58/+67 |
| | | | | | | | | wrapper decorator | ||||
| * | Split out the JsonResource request logging and error handling into a ↵ | Mark Haines | 2015-04-21 | 1 | -94/+113 |
| | | | | | | | | separate wrapper function | ||||
* | | Merge branch 'develop' into csauth | David Baker | 2015-04-17 | 1 | -93/+0 |
|\| | |||||
| * | Move server key api into rest/key/v1 | Mark Haines | 2015-04-14 | 1 | -93/+0 |
| | | |||||
* | | Explain how I justified to myself making JsonResource not always send JSON. | David Baker | 2015-04-01 | 1 | -0/+7 |
| | | |||||
* | | Completely replace fallback auth for C/S V2: | David Baker | 2015-04-01 | 1 | -2/+5 |
| | | | | | | | | | | | | | | * Now only the auth part goes to fallback, not the whole operation * Auth fallback is a normal API endpoint, not a static page * Params like the recaptcha pubkey can just live in the config Involves a little engineering on JsonResource so its servlets aren't always forced to return JSON. I should document this more, in fact I'll do that now. | ||||
* | | Make docs a bit more true | David Baker | 2015-03-31 | 1 | -1/+1 |
| | | |||||
* | | Grammar and deduplication | David Baker | 2015-03-31 | 1 | -5/+4 |
| | | |||||
* | | New registration for C/S API v2. Only ReCAPTCHA working currently. | David Baker | 2015-03-30 | 1 | -0/+2 |
|/ |