summary refs log tree commit diff
path: root/synapse/http (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Track DB scheduling delay per-requestRichard van der Hoff2018-01-162-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 millisecsRichard van der Hoff2018-01-162-4/+6
| | | | ... to reduce the amount of floating-point foo we do.
* Reorganise request and block metricsRichard van der Hoff2018-01-151-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 servletRichard van der Hoff2018-01-091-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_errhandlerRichard van der Hoff2017-11-271-2/+4
|\ | | | | Fix error handling on dns lookup
| * Fix error handling on dns lookupRichard van der Hoff2017-11-241-2/+4
| | | | | | | | | | | | pass the right arguments to the errback handler Fixes "TypeError('eb() takes exactly 2 arguments (1 given)',)"
* | Improve tracebacks on exceptionsRichard van der Hoff2017-11-271-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 requestRichard van der Hoff2017-11-101-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 endpointsRichard van der Hoff2017-11-021-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_headerRichard van der Hoff2017-10-271-28/+80
|\ | | | | Front-end proxy: pass through auth header
| * Docstring for post_urlencoded_get_jsonRichard van der Hoff2017-10-271-0/+11
| |
| * SimpleHTTPClient: add support for headersRichard van der Hoff2017-10-261-28/+69
| | | | | | | | Sometimes we need to pass headers into these methods
* | Fix logcontext leaks in httpclientRichard van der Hoff2017-10-261-10/+9
|/ | | | `preserve_context_over_fn` is borked
* replace 'except:' with 'except Exception:'Richard van der Hoff2017-10-234-6/+6
| | | | what could possibly go wrong
* Merge branch 'develop' into erikj/groups_mergedDavid Baker2017-10-022-27/+114
|\
| * Improve logging of failures in matrixfederationclientRichard van der Hoff2017-09-281-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 Hoff2017-09-281-5/+17
| | | | | | | | | | ... to cope with people with broken dnssec setups, mostly
| * Do an AAAA lookup on SRV record targets (#2462)Richard van der Hoff2017-09-221-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 DELETEErik Johnston2017-07-181-0/+46
| |
* | Add 'args' param to post_jsonErik Johnston2017-07-181-9/+15
| |
* | Initial group server implementationErik Johnston2017-07-101-1/+3
|/
* allow Authorization header which handling got implemented in #1098Krombel2017-06-161-1/+1
| | | | Signed-off-by: Matthias Kesler <krombel@krombel.de>
* Remember how twisted worksKegan Dougal2017-05-051-2/+2
|
* Include the clockKegan Dougal2017-05-051-0/+1
|
* Rewrite SimpleHttpClient.request to include timeoutsKegan Dougal2017-05-051-13/+19
| | | | Fixes #2191
* No need for the exception variableDavid Baker2017-05-031-1/+1
|
* List caught expection typesDavid Baker2017-05-031-1/+1
|
* Remove debuggingDavid Baker2017-04-261-2/+1
|
* Merge remote-tracking branch 'origin/develop' into ↵David Baker2017-04-261-7/+14
|\ | | | | | | dbkr/http_request_propagate_error
| * Fix some lies, and other clarifications, in docstringsRichard van der Hoff2017-04-211-7/+14
| | | | | | | | | | The documentation on get_json has been wrong ever since the very first commit to synapse...
* | Fix get_jsonDavid Baker2017-04-261-5/+4
| |
* | Use CodeMessageException subclass insteadDavid Baker2017-04-251-44/+20
| | | | | | | | | | Parse json errors from get_json client methods and throw special errors.
* | Need the HTTP status codeDavid Baker2017-04-211-5/+5
| |
* | Do the same for get_jsonDavid Baker2017-04-211-8/+21
| |
* | Don't error for 3xx responsesDavid Baker2017-04-211-1/+1
| |
* | Propagate errors sensibly from proxied IS requestsDavid Baker2017-04-211-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 requestsRichard van der Hoff2017-03-231-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 roomdirsRichard van der Hoff2017-03-231-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 matrixfederationclientRichard van der Hoff2017-03-231-101/+127
| | | | | rather than having to instrument everywhere we make a federation call, make the MatrixFederationHttpClient manage the retry limiter.
* MatrixFederationHttpClient: clean upRichard van der Hoff2017-03-231-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_2Erik Johnston2017-03-151-0/+10
|\ | | | | Phone number registration / login support v2
| * Support registration / login with phone numberDavid Baker2017-03-131-0/+10
| | | | | | | | Changes from https://github.com/matrix-org/synapse/pull/1971
* | Fix routing loop when fetching remote mediaRichard van der Hoff2017-03-131-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 Johnston2017-03-131-10/+0
|
* Refector out assert_params_in_requestDavid Baker2017-03-081-0/+10
| | | | and replace requestEmailToken where we meant requestMsisdnToken
* Merge branch 'release-v0.18.6' into developMark Haines2016-12-292-7/+70
|\
| * Manually abort the underlying TLS connection.Mark Haines2016-12-291-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 offErik Johnston2016-12-291-2/+2
| |
| * Spelling and commentsErik Johnston2016-12-291-4/+6
| |
| * Clean upErik Johnston2016-12-292-7/+4
| |
| * Wrap connections in an N minute timeout to ensure they get reaped correctlyErik Johnston2016-12-292-5/+61
| |
* | Merge pull request #1696 from kyrias/ipv6Matthew Hodgson2016-12-192-23/+22
|\ \ | |/ |/| IPv6 support
| * Remove spurious newlineJohannes Löthberg2016-12-121-1/+0
| | | | | | | | | | | | Apparently I just removed the spaces instead... Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
| * Fixup for #1689 and #1690Johannes Löthberg2016-12-122-8/+13
| | | | | | | | Signed-off-by: Johannes Löthberg <johannes@kyriasis.com>
| * IPv6 support for endpoint.pyGlyph2016-12-111-4/+4
| | | | | | Similar to https://github.com/matrix-org/synapse/pull/1689, but for endpoint.py
| * IPv6 support for client.pyGlyph2016-12-111-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 listErik Johnston2016-12-061-2/+6
|/
* More intelligent Content-Type parsingRichard van der Hoff2016-11-301-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 repoMark Haines2016-11-021-5/+18
|
* Pass since/from parameters over federationErik Johnston2016-09-151-4/+14
|
* Add a timeout parameter for end2end key queries.Mark Haines2016-09-121-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 typoErik Johnston2016-08-221-3/+3
|
* Allow request handlers to override metric nameErik Johnston2016-08-221-21/+31
|
* Use top level measureErik Johnston2016-08-221-15/+1
|
* Add a top level measureErik Johnston2016-08-191-45/+46
|
* Remove redundant measureErik Johnston2016-08-191-35/+34
|
* Measure http.server renderErik Johnston2016-08-191-28/+30
|
* Clean up TransactionQueueErik Johnston2016-08-101-3/+1
|
* Log when adding listenersRichard van der Hoff2016-07-251-0/+1
|
* Work around TLS bug in twistedRichard van der Hoff2016-06-151-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 Haines2016-05-161-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 Hodgson2016-05-012-7/+13
| | | | matrix.org IP space
* Fix more typos in per-request metricsMark Haines2016-04-281-4/+5
|
* Fix typo in request metricsMark Haines2016-04-281-1/+1
|
* Add a comment explaining why automatic metric reporting is disabled for ↵Mark Haines2016-04-281-0/+4
| | | | JsonResource
* Check if report_metrics is TrueMark Haines2016-04-281-3/+4
|
* Report per request metrics for all of the things using request_handlerMark Haines2016-04-281-38/+63
|
* Move SynapseSite to its own fileMark Haines2016-04-221-0/+146
|
* Make InsecureInterceptableContextFactory work with SpiderEndpointErik Johnston2016-04-191-1/+4
|
* Merge pull request #688 from matrix-org/matthew/preview_urlsMatthew Hodgson2016-04-112-5/+197
|\ | | | | URL previewing support
| * actually throw meaningful errorsMatthew Hodgson2016-04-081-5/+16
| |
| * Add url_preview_enabled config option to turn on/off preview_url endpoint. ↵Matthew Hodgson2016-04-082-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_urlsMatthew Hodgson2016-04-041-30/+51
| |\
| * | pep8Matthew Hodgson2016-04-031-4/+10
| | |
| * | add a persistent cache of URL lookups, and fix up the in-memory one to workMatthew Hodgson2016-04-031-3/+3
| | |
| * | support gzip compression, and don't pass through error msgsMatthew Hodgson2016-04-021-3/+8
| | |
| * | handle spidered relative images correctlyMatthew Hodgson2016-03-311-1/+1
| | |
| * | sync in changes from matrixfederationclientMatthew Hodgson2016-03-311-2/+6
| | |
| * | handle requests with missing content-length headers (e.g. YouTube)Matthew Hodgson2016-03-311-7/+26
| | |
| * | implement redirectsMatthew Hodgson2016-03-291-3/+3
| | |
| * | make it workMatthew Hodgson2016-03-291-1/+2
| | |
| * | make it buildMatthew Hodgson2016-03-291-1/+1
| | |
| * | Merge branch 'develop' into matthew/preview_urlsMatthew Hodgson2016-03-291-4/+6
| |\ \
| * \ \ Merge branch 'develop' into matthew/preview_urlsMatthew Hodgson2016-03-274-27/+159
| |\ \ \
| * | | | initial WIP of a tentative preview_url endpoint - incomplete, untested, ↵Matthew Hodgson2016-01-241-0/+81
| | | | | | | | | | | | | | | | | | | | experimental, etc. just putting it here for safekeeping for now
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/dns_cacheErik Johnston2016-04-071-30/+51
|\ \ \ \ \ | | |_|_|/ | |/| | |
| * | | | Use google style doc strings.Mark Haines2016-04-011-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 funcErik Johnston2016-03-311-3/+3
| | | |
* | | | Read from DNS cache if within TTLErik Johnston2016-03-311-16/+23
|/ / /
* | / Intern all the thingsErik Johnston2016-03-231-4/+6
| |/ |/|
* | Fix regression where synapse checked whether push rules were valid JSON ↵Mark Haines2016-03-141-4/+17
| | | | | | | | before the compatibility hack that handled clients sending invalid JSON
* | Use parse_json_object_from_request to parse JSON out of request bodiesMark Haines2016-03-111-5/+12
| |
* | Add a parse_json_object functionMark Haines2016-03-091-5/+65
| | | | | | | | | | to deduplicate all the copy+pasted _parse_json functions. Also document the parse_.* functions.
* | pep8David Baker2016-03-081-2/+5
| |
* | Encode unicode objects given to post_urlencode* otherwise urllib.urlencode ↵David Baker2016-03-081-2/+12
| | | | | | | | chokes.
* | Catch the exceptions thrown by twisted when you write to a closed connectionMark Haines2016-02-121-1/+20
| |
* | Fix up logcontextsErik Johnston2016-02-081-3/+2
| |
* | Add metrics to pushersErik Johnston2016-02-081-0/+10
| |
* | Allowing tagging log contextsErik Johnston2016-02-031-15/+26
| |
* | Fix flake8 warnings for new flake8Daniel Wagner-Hall2016-02-021-1/+1
|/
* Fix AttributeErrorErik Johnston2016-01-211-1/+1
|
* Cache dns lookups, and use the cache if we fail to lookup servers laterErik Johnston2016-01-201-30/+71
|
* copyrightsMatthew Hodgson2016-01-076-6/+6
|
* Fix typoDaniel Wagner-Hall2015-12-161-1/+1
|
* Include errcode on Internal Server ErrorDaniel Wagner-Hall2015-12-141-2/+5
|
* Track the time spent in the database per request.Mark Haines2015-12-071-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 requestMark Haines2015-12-041-0/+17
|
* Host /unstable and /r0 versions of r0 APIsDaniel Wagner-Hall2015-12-012-10/+11
|
* Fix typoErik Johnston2015-11-201-2/+2
|
* Don't limit connections to perspective serversErik Johnston2015-11-201-1/+4
|
* Use min and not max to set an upper bound on retry intervalErik Johnston2015-11-201-2/+2
|
* Add commentErik Johnston2015-11-171-0/+2
|
* Only retry federation requests for a long time for background requestsErik Johnston2015-11-171-7/+19
|
* Implement required method 'resumeProducing'Erik Johnston2015-11-171-0/+3
|
* Slightly more aggressive retry timers at HTTP levelErik Johnston2015-11-171-2/+3
|
* Retry dead servers a lot less oftenErik Johnston2015-11-021-2/+8
|
* Verify third party ID server certificatesDaniel Wagner-Hall2015-10-161-4/+0
|
* Fix previous merge to s/version_string/user_agent/Erik Johnston2015-10-101-2/+2
|
* Add get_raw method to SimpleHttpClient, use this in CAS auth rather than ↵Steven Hammerton2015-10-101-19/+36
| | | | requests
* Use space not dash as delimiterDaniel Wagner-Hall2015-10-061-1/+1
|
* Use space not dash as delimiterDaniel Wagner-Hall2015-10-061-1/+1
|
* Preserve version string in user agentDaniel Wagner-Hall2015-10-051-3/+3
|
* Allow synapse's useragent to be customizedDaniel Wagner-Hall2015-10-021-6/+9
| | | | | This will allow me to write tests which verify which server made HTTP requests in a federation context.
* Rename context factoryDaniel Wagner-Hall2015-09-151-3/+3
| | | | Mjark is officially no fun.
* Fix random formattingDaniel Wagner-Hall2015-09-091-1/+2
|
* Allow configuration to ignore invalid SSL certsDaniel Wagner-Hall2015-09-092-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 librariesMark Haines2015-08-243-9/+10
|
* PEP8Erik Johnston2015-08-131-1/+0
|
* Merge branch 'develop' into markjh/twisted-15Mark Haines2015-08-123-123/+130
|\ | | | | | | | | Conflicts: synapse/http/matrixfederationclient.py
| * Don't 500 if a group is missing from the regexMark Haines2015-07-061-1/+1
| |
| * Fix log context when sending requestsErik Johnston2015-06-192-33/+35
| |
| * Remove stale debug linesErik Johnston2015-06-191-10/+0
| |
| * Add IDs to outbound transactionsErik Johnston2015-06-191-53/+71
| |
| * Disable twisted access logging. Move access logging to SynapseRequest objectErik Johnston2015-06-151-58/+32
| |
| * Log more when we have processed the requestErik Johnston2015-06-151-2/+12
| |
| * Create SynapseRequest that overrides __repr__ to not print access_tokenErik Johnston2015-06-151-11/+3
| |
| * Make http.server request logging more verbose, but redact access_tokensErik Johnston2015-06-151-2/+12
| |
| * Log requests and responses sent via http.clientErik Johnston2015-06-151-3/+15
| |
* | Merge branch 'develop' into markjh/twisted-15Mark Haines2015-06-011-4/+12
|\| | | | | | | | | Conflicts: synapse/python_dependencies.py
| * Remove log lineErik Johnston2015-05-291-1/+0
| |
| * Add config option to turn off freezing events. Use new encode_json api and ↵Erik Johnston2015-05-291-4/+13
| | | | | | | | ujson.loads
* | Use Twisted-15.2.1, Use Agent.usingEndpointFactory rather than implement our ↵Mark Haines2015-06-011-50/+25
|/ | | | own Agent
* Correctly pass connection pool parameterErik Johnston2015-05-282-2/+2
|
* Up maxPersistentPerHost countErik Johnston2015-05-282-0/+2
|
* Add connection pooling to SimpleHttpClientErik Johnston2015-05-281-2/+4
|
* Use connection pool for federation connectionsErik Johnston2015-05-281-2/+3
|
* Add doc stringsErik Johnston2015-05-221-0/+3
|
* Add a timeout param to get_eventErik Johnston2015-05-191-5/+8
|
* Fix up leak. Add warnings.Erik Johnston2015-05-081-2/+4
|
* Change the way we do logging contexts so that they survive divergencesErik Johnston2015-05-082-17/+21
|
* Unused importDavid Baker2015-04-301-1/+1
|
* Doesn't look like this is used anymoreDavid Baker2015-04-301-13/+0
|
* Merge branch 'develop' into csauthDavid Baker2015-04-242-152/+179
|\ | | | | | | | | Conflicts: synapse/http/server.py
| * Combine the request wrappers in rest/media/v1 and http/server into a single ↵Mark Haines2015-04-212-58/+67
| | | | | | | | wrapper decorator
| * Split out the JsonResource request logging and error handling into a ↵Mark Haines2015-04-211-94/+113
| | | | | | | | separate wrapper function
* | Merge branch 'develop' into csauthDavid Baker2015-04-171-93/+0
|\|
| * Move server key api into rest/key/v1Mark Haines2015-04-141-93/+0
| |
* | Explain how I justified to myself making JsonResource not always send JSON.David Baker2015-04-011-0/+7
| |
* | Completely replace fallback auth for C/S V2:David Baker2015-04-011-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 trueDavid Baker2015-03-311-1/+1
| |
* | Grammar and deduplicationDavid Baker2015-03-311-5/+4
| |
* | New registration for C/S API v2. Only ReCAPTCHA working currently.David Baker2015-03-301-0/+2
|/
* Merge pull request #109 from matrix-org/default_registrationErik Johnston2015-03-181-2/+2
|\ | | | | Disable registration by default. Add script to register new users.
| * Add missing commasErik Johnston2015-03-131-2/+2
| |
* | Add a DistributionMetric to HTTP request/response processing time in the serverPaul "LeoNerd" Evans2015-03-161-0/+9
| |
* | actually uphold the bind_host parameter. in theory should make ipv6 binds ↵Matthew Hodgson2015-03-141-1/+6
| | | | | | | | work like bind_host: 'fe80::1%lo0'
* | Appease pep8Paul "LeoNerd" Evans2015-03-123-9/+19
| |
* | Count incoming HTTP requests per servlet that respondsPaul "LeoNerd" Evans2015-03-121-7/+11
| |
* | Use _ instead of . as a metric namespacing separator, for PrometheusPaul "LeoNerd" Evans2015-03-123-6/+6
| |
* | Rename Metrics' "keys" to "labels"Paul "LeoNerd" Evans2015-03-123-6/+6
| |
* | Add vector counters to HTTP clients and servers; count the requests by ↵Paul "LeoNerd" Evans2015-03-123-4/+61
| | | | | | | | method and responses by method and response code
* | Pull out all uses of the underlying HTTP user agent .request() method into a ↵Paul "LeoNerd" Evans2015-03-121-5/+10
|/ | | | single wrapper function, to make adding metrics easier
* Slightly reduce the insane amounts of indentation in main http server ↵Paul "LeoNerd" Evans2015-03-051-21/+23
| | | | response path, by 'continue'ing around a non-match or falling through
* Fix bug which prevented the HS pushing events to the AS due to FrozenEventsKegan Dougal2015-03-021-1/+1
|
* Merge branch 'develop' of github.com:matrix-org/synapse into release-v0.7.1Erik Johnston2015-02-185-35/+30
|\
| * Make /keys/ return correct Server versionErik Johnston2015-02-181-1/+5
| |
| * Use git aware version string in User-Agent and Server headersErik Johnston2015-02-184-34/+25
| |
* | Don't convert DNSLookupError to a 4xx SynapseErrorErik Johnston2015-02-181-1/+1
|/
* Add .__name__ after type(e)Erik Johnston2015-02-181-2/+2
|
* Fix up ResponseNeverReceived to strErik Johnston2015-02-181-9/+11
|
* strings.join() expects iterable of stringsErik Johnston2015-02-181-1/+1
|
* Remove unused importErik Johnston2015-02-171-1/+0
|
* Merge branch 'develop' of github.com:matrix-org/synapse into failuresErik Johnston2015-02-171-10/+57
|\
| * Merge pull request #50 from matrix-org/application-servicesMark Haines2015-02-131-10/+57
| |\ | | | | | | Application Services
| | * Merge branch 'develop' into application-servicesKegan Dougal2015-02-111-2/+1
| | |\
| | * | Minor tweaks based on PR feedback.Kegan Dougal2015-02-111-1/+2
| | | |
| | * | Merge branch 'develop' into application-servicesKegan Dougal2015-02-092-3/+23
| | |\ \
| | * \ \ Merge branch 'develop' into application-servicesKegan Dougal2015-02-051-6/+36
| | |\ \ \
| | * | | | Add SimpleHttpClient.put_json with the same semantics as get_json.Kegan Dougal2015-02-041-2/+46
| | | | | |
| | * | | | Update user/alias query APIs to use new format of SimpleHttpClient.get_jsonKegan Dougal2015-02-041-0/+3
| | | | | |
| | * | | | Modify API for SimpleHttpClient.get_json and update usages.Kegan Dougal2015-02-041-10/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, this would only return the HTTP body as JSON, and discard other response information (e.g. the HTTP response code). This has now been changed to throw a CodeMessageException on a non-2xx response, with the response code and body, which can then be parsed as JSON. Affected modules include: - Registration/Login (when using an email for IS auth)
* | | | | | Make matrixfederationclient log more nicelyErik Johnston2015-02-171-11/+12
|/ / / / /
* | | | | Use encode_canonical_json for http clientErik Johnston2015-02-111-1/+3
| | | | |
* | | | | Merge pull request #61 from matrix-org/timeout-federation-requestsErik Johnston2015-02-111-1/+7
|\ \ \ \ \ | | | | | | | | | | | | Timeout federation requests
| * \ \ \ \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2015-02-111-2/+1
| |\ \ \ \ \ | | | |_|_|/ | | |/| | | | | | | | | timeout-federation-requests
| * | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2015-02-114-13/+228
| |\ \ \ \ \ | | | |_|_|/ | | |/| | | | | | | | | timeout-federation-requests
| * | | | | PEP8Erik Johnston2015-02-111-1/+0
| | | | | |
| * | | | | Move time_bound_deferred into ClockErik Johnston2015-02-111-3/+2
| | | | | |
| * | | | | Time out HTTP federation requestsErik Johnston2015-02-101-2/+9
| | | | | |
* | | | | | Blunty replace json with simplejsonErik Johnston2015-02-112-2/+2
| |_|/ / / |/| | | |
* | | | | Fix bug where variable was not always definedErik Johnston2015-02-111-2/+1
| |/ / / |/| | |
* | | | Log when we receive a request, when we send a response and how long it took ↵Erik Johnston2015-02-091-2/+21
| | | | | | | | | | | | | | | | to process it.
* | | | Return body of response in HttpResponseExceptionErik Johnston2015-02-061-1/+2
| |_|/ |/| |
* | | Apply sanity to the transport client interface. Convert 'make_join' and ↵Erik Johnston2015-02-041-6/+36
| |/ |/| | | | | 'send_join' to accept iterables of destinations
* | Merge branch 'develop' of github.com:matrix-org/synapse into rejectionsErik Johnston2015-01-303-6/+78
|\ \ | | | | | | | | | | | | | | | Conflicts: synapse/storage/__init__.py synapse/storage/schema/delta/v12.sql
| * \ Merge branch 'develop' into pushersDavid Baker2015-01-281-0/+113
| |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: synapse/handlers/events.py synapse/server.py
| | * | Add client v2_alpha resource to synapse server resource treeMark Haines2015-01-231-0/+57
| | | |
| * | | Merge branch 'develop' into pushersDavid Baker2015-01-221-1/+0
| |\ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: synapse/rest/__init__.py
| * | | | Oops: second part of commit dc938606David Baker2015-01-221-6/+2
| | | | |
| * | | | Merge branch 'develop' into pushersDavid Baker2015-01-137-12/+42
| |\ \ \ \ | | | |_|/ | | |/| |
| * | | | Merge branch 'develop' into pushersDavid Baker2014-12-183-235/+129
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: synapse/api/errors.py synapse/server.py synapse/storage/__init__.py
| * \ \ \ \ Merge branch 'develop' into pushersDavid Baker2014-12-021-2/+2
| |\ \ \ \ \
| * | | | | | More work on pushers. Attempt to do HTTP pokes. Not sure if the actual HTTP ↵David Baker2014-11-211-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | pokes work or not yet but the retry semantics are pretty good.
* | | | | | | Make post_json(...) actually send data.Erik Johnston2015-01-291-1/+1
| | | | | | |
* | | | | | | Add post_json(...) method to federation clientErik Johnston2015-01-291-0/+37
| |_|_|_|_|/ |/| | | | |
* | | | | | Add RestServlet base class in synapse/http/servlet.pyMark Haines2015-01-231-0/+56
| |_|_|_|/ |/| | | |
* | | | | Finish renaming "context" to "room_id" in federation codebaseMark Haines2015-01-161-1/+0
| |_|_|/ |/| | |
* | | | SYN-231: User agent header brokenMark Haines2015-01-081-3/+3
| | | |
* | | | Update copyright noticesMark Haines2015-01-067-8/+8
| | | |
* | | | Set a content-length for JSON responsesMark Haines2015-01-061-0/+1
| | | |
* | | | Include version in User-Agent and Server headersMark Haines2014-12-224-6/+35
| |_|/ |/| |
* | | Fix tests and remove debug loggingErik Johnston2014-12-121-4/+0
| | |
* | | Consistently url decode and decode as utf 8 the URL partsErik Johnston2014-12-121-1/+11
| | |
* | | Limit the size of images that are thumbnailed serverside. Limit the size of ↵Mark Haines2014-12-111-6/+19
| | | | | | | | | | | | file that a server will download from a remote server
* | | Merge branch 'develop' into media_repositoryMark Haines2014-12-101-9/+26
|\ \ \
| * | | turn back on per-request transaction retries, so that every time we try to ↵Matthew Hodgson2014-12-101-4/+3
| | | | | | | | | | | | | | | | hit a dead server we actually end up hammering 5 times :|
| * | | Code style.Erik Johnston2014-12-101-8/+21
| | | |
| * | | add errbacks to enqueue_pdu deferreds; change logging for failed federation ↵Matthew Hodgson2014-12-101-2/+2
| | | | | | | | | | | | | | | | sends to warn rather than exception
| * | | squidge to 79 columns as per pep8Matthew Hodgson2014-12-101-3/+4
| | | |
| * | | track replication destination health, and perform exponential back-off when ↵Matthew Hodgson2014-12-071-6/+10
| | |/ | |/| | | | | | | sending transactions. does *not* yet retry transactions, but drops them on the floor if waiting for a server to recover.
* | | Implement download support for media_repositoryMark Haines2014-12-041-5/+68
| | |
* | | Get uploads working with new media repoMark Haines2014-12-021-2/+2
| | |
* | | Write the upload portion of version 1 of the media repositoryMark Haines2014-12-022-219/+14
|/ /
* / typosMatthew Hodgson2014-11-241-2/+2
|/
* Fix pep8 and pyflakes warningsMark Haines2014-11-203-7/+8
|
* Merge branch 'develop' into http_client_refactorDavid Baker2014-11-202-8/+9
|\
| * Fix pep8 codestyle warningsMark Haines2014-11-202-8/+9
| |
| * Use module loggers rather than the root logger. Exceptions caused by bad ↵Mark Haines2014-11-201-1/+1
| | | | | | | | clients shouldn't cause ERROR level logging. Fix sql logging to use 'repr' rather than 'str'
* | Separate out the matrix http client completely because just about all of its ↵David Baker2014-11-203-323/+338
| | | | | | | | code it now separate from the simple case we need for standard HTTP(S)
* | Refactor the HTTP clients a little.David Baker2014-11-201-79/+75
| |