Paul "LeoNerd" Evans
11dbceb761
Add a counter metric for successfully-sent transactions
2017-04-11 17:16:12 +01:00
Paul "LeoNerd" Evans
856a18f7a8
kick jenkins
2017-03-01 16:24:11 +00:00
Paul "LeoNerd" Evans
6b1ffa5f3d
Added also a control script to run via the crazy dendron+haproxy hybrid we're temporarily using
2017-02-28 18:14:13 +00:00
Paul "LeoNerd" Evans
f4e7545d88
No longer need to request all the sub-components to be split when running sytest+dendron
2017-02-28 18:11:52 +00:00
Paul "LeoNerd" Evans
10e48d8310
Don't clobber a displayname or avatar_url if provided by an m.room.member event
2017-01-24 18:06:07 +00:00
Paul "LeoNerd" Evans
89e3e39d52
Fix copypasto error in metric rename table in docs
2016-11-03 17:04:13 +00:00
Paul "LeoNerd" Evans
2938a00825
Rename the python-specific metrics now the docs claim that we have done
2016-11-03 17:03:52 +00:00
Paul "LeoNerd" Evans
5219f7e060
Since we don't export per-filetype fd counts any more, delete all the code related to that too
2016-11-03 16:41:32 +00:00
Paul "LeoNerd" Evans
93ebeb2aa8
Remove now-unused 'resource' import
2016-11-03 16:37:09 +00:00
Paul "LeoNerd" Evans
c1b077cd19
Now we have new-style metrics don't bother exporting legacy-named process ones
2016-11-03 16:34:16 +00:00
Paul "LeoNerd" Evans
1d4d518b50
Add details of renamed metrics
2016-10-31 15:06:52 +00:00
Paul "LeoNerd" Evans
159434a133
Remove long-deprecated instructions about promethesus console; also fix for modern config file format
2016-10-28 13:58:27 +01:00
Paul "LeoNerd" Evans
1cc22da600
Set up the process collector during metrics __init__; that way all split-process workers have it
2016-10-27 18:09:34 +01:00
Paul "LeoNerd" Evans
aac13b1f9a
Pass the Metrics group into the process collector instead of having it find its own one; this avoids it needing to import from synapse.metrics
2016-10-27 18:08:15 +01:00
Paul "LeoNerd" Evans
ccc1a3d54d
Allow creation of a 'subspace' within a Metrics object, returning another one
2016-10-27 18:07:34 +01:00
Paul "LeoNerd" Evans
b01aaadd48
Split callback metric lambda functions down onto their own lines to keep line lengths under 90
2016-10-19 18:26:13 +01:00
Paul "LeoNerd" Evans
1071c7d963
Adjust code for <100 char line limit
2016-10-19 18:23:25 +01:00
Paul "LeoNerd" Evans
6453d03edd
Cut the raw /proc/self/stat line up into named fields at collection time
2016-10-19 18:21:40 +01:00
Paul "LeoNerd" Evans
3ae48a1f99
Move the process metrics collector code into its own file
2016-10-19 18:10:24 +01:00
Paul "LeoNerd" Evans
4cedd53224
A slightly neater way to manage metric collector functions
2016-10-19 17:54:09 +01:00
Paul "LeoNerd" Evans
5663137e03
appease pep8
2016-10-19 16:09:42 +01:00
Paul "LeoNerd" Evans
b202531be6
Also guard /proc/self/fds-related code with a suitable psuedoconstant
2016-10-19 15:37:41 +01:00
Paul "LeoNerd" Evans
1b179455fc
Guard registration of process-wide metrics by existence of the requisite /proc entries
2016-10-19 15:34:38 +01:00
Paul "LeoNerd" Evans
981f852d54
Add standard process_start_time_seconds metric
2016-10-19 15:05:22 +01:00
Paul "LeoNerd" Evans
def63649df
Add standard process_max_fds metric
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
06f1ad1625
Add standard process_open_fds metric
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
95fc70216d
Add standard process_*_memory_bytes metrics
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
9b0316c75a
Use /proc/self/stat to generate the new process_cpu_*_seconds_total metrics
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
03c2720940
Export CPU usage metrics also under prometheus-standard metric name
2016-10-19 15:05:21 +01:00
Paul "LeoNerd" Evans
b21b9dbc37
Callback metric values might not just be integers - allow floats
2016-10-19 15:05:15 +01:00
Paul "LeoNerd" Evans
ca35e54d6b
Fix typo "persiting"
2016-09-13 13:26:33 +01:00
Paul "LeoNerd" Evans
776594f99d
Log if rejecting 3PE query metadata result due to type check
2016-09-09 15:11:31 +01:00
Paul "LeoNerd" Evans
ed44c475d8
Reject malformed 3PE query metadata results earlier in AS API handling code
2016-09-09 15:07:04 +01:00
Paul "LeoNerd" Evans
f25d74f69c
Minor fixes from PR comments
2016-09-09 14:54:16 +01:00
Paul "LeoNerd" Evans
d271383e63
Filter returned events for client-facing format
2016-09-09 14:40:15 +01:00
Paul "LeoNerd" Evans
0fc0a3bdff
Allow clients to specify the format a room state event is returned in
2016-09-09 14:34:29 +01:00
Paul "LeoNerd" Evans
bdbcfc2a80
appease pep8
2016-09-09 13:31:39 +01:00
Paul "LeoNerd" Evans
6eb0c8a2e4
Python isn't JavaScript; have to quote dict keys
2016-09-09 13:31:17 +01:00
Paul "LeoNerd" Evans
25eb769b26
Efficiency fix for lookups of a single protocol
2016-09-09 13:25:02 +01:00
Paul "LeoNerd" Evans
3328428d05
Allow lookup of a single 3PE protocol query metadata
2016-09-09 13:19:04 +01:00
Paul "LeoNerd" Evans
033d43e419
Don't corrupt shared cache on subsequent protocol requests
2016-09-09 13:10:36 +01:00
Paul "LeoNerd" Evans
2f267ee160
Collect up all the "instances" lists of individual AS protocol results into one combined answer to the client
2016-09-08 17:43:53 +01:00
Paul "LeoNerd" Evans
9459137f1e
Just sprintf the 'kind' argument into uri directly
2016-08-25 18:35:38 +01:00
Paul "LeoNerd" Evans
1294d4a329
Move ThirdPartyEntityKind into api.constants so the expectation becomes that the value is significant
2016-08-25 18:34:47 +01:00
Paul "LeoNerd" Evans
e7af8be5ae
Root the 3PE lookup API within /_matrix/app/unstable instead of at toplevel
2016-08-25 18:06:29 +01:00
Paul "LeoNerd" Evans
142983b4ea
APP_SERVICE_PREFIX is never used; don't bother
2016-08-25 18:06:05 +01:00
Paul "LeoNerd" Evans
adf53f04ce
appease pep8
2016-08-25 16:00:31 +01:00
Paul "LeoNerd" Evans
c435bfee9c
Don't need toplevel cache on 3PE lookup metadata any more
2016-08-25 15:57:07 +01:00
Paul "LeoNerd" Evans
db7283cc6b
Implement a ResponseCache around 3PE lookup metadata lookups
2016-08-25 15:56:27 +01:00
Paul "LeoNerd" Evans
d0b8d49f71
Kill PROTOCOL_META since I'm not using it any more
2016-08-25 15:45:28 +01:00
Paul "LeoNerd" Evans
5474824975
Actually query over AS API for 3PE lookup metadata
2016-08-25 15:29:36 +01:00
Paul "LeoNerd" Evans
8e1ed09dff
Move static knowledge of protocol metadata into AS handler; cache the result
2016-08-24 13:01:53 +01:00
Paul "LeoNerd" Evans
965f33c901
Declare 'gitter' known protocol, with user lookup
2016-08-24 12:34:03 +01:00
Paul "LeoNerd" Evans
9899824b85
Initial hack at the 3PN protocols metadata lookup API
2016-08-24 12:33:01 +01:00
Paul "LeoNerd" Evans
63c19e1df9
Move 3PU/3PL lookup APIs into /thirdparty containing entity
2016-08-24 11:55:57 +01:00
Paul "LeoNerd" Evans
65201631a4
Move validation logic for AS 3PE query response into ApplicationServiceApi class, to keep the handler logic neater
2016-08-18 17:33:56 +01:00
Paul "LeoNerd" Evans
697872cf08
More warnings about invalid results from AS 3PE query
2016-08-18 17:24:39 +01:00
Paul "LeoNerd" Evans
b515f844ee
Avoid so much copypasta between 3PU and 3PL query by unifying around a ThirdPartyEntityKind enumeration
2016-08-18 17:19:55 +01:00
Paul "LeoNerd" Evans
2a91799fcc
Minor syntax neatenings
2016-08-18 16:58:25 +01:00
Paul "LeoNerd" Evans
fcf1dec809
Appease pep8
2016-08-18 16:26:19 +01:00
Paul "LeoNerd" Evans
105ff162d4
Authenticate 3PE lookup requests
2016-08-18 16:19:23 +01:00
Paul "LeoNerd" Evans
06964c4a0a
Copypasta the 3PU support code to also do 3PL
2016-08-18 16:09:50 +01:00
Paul "LeoNerd" Evans
f3afd6ef1a
Remove TODO note about request fields being strings - they're always strings
2016-08-18 15:53:01 +01:00
Paul "LeoNerd" Evans
d7b42afc74
Log a warning if an AS yields an invalid 3PU lookup result
2016-08-18 15:49:55 +01:00
Paul "LeoNerd" Evans
80f4740c8f
Scattergather the call out to ASes; validate received results
2016-08-18 15:40:41 +01:00
Paul "LeoNerd" Evans
434bbf2cb5
Filter 3PU lookups by only ASes that declare knowledge of that protocol
2016-08-18 14:56:02 +01:00
Paul "LeoNerd" Evans
d5bf7a4a99
Merge remote-tracking branch 'origin/develop' into paul/thirdpartylookup
2016-08-18 14:21:01 +01:00
Paul "LeoNerd" Evans
718ffcf8bb
Since empty lookups now return 200/empty list not 404, we can safely log failures as exceptions
2016-08-18 14:18:37 +01:00
Paul "LeoNerd" Evans
3856582741
Ensure that 3PU lookup request fields actually get passed in
2016-08-18 14:06:02 +01:00
Paul "LeoNerd" Evans
f0c73a1e7a
Extend individual list results into the main return list, don't append
2016-08-18 13:53:54 +01:00
Paul "LeoNerd" Evans
b3511adb92
Don't catch the return-value-as-exception that @defer.inlineCallbacks will use
2016-08-18 13:45:18 +01:00
Paul "LeoNerd" Evans
3ec10dffd6
Actually make 3PU lookup calls out to ASes
2016-08-18 00:39:09 +01:00
Paul "LeoNerd" Evans
fa87c981e1
Thread 3PU lookup through as far as the AS API object; which currently noöps it
2016-08-17 16:17:28 +01:00
Paul "LeoNerd" Evans
e3e3fbc23a
Initial empty implementation that just registers an API endpoint handler
2016-08-17 12:46:49 +01:00
Paul "LeoNerd" Evans
05f6447301
Forbid non-ASes from registering users whose names begin with '_' (SYN-738)
2016-07-27 17:54:26 +01:00
Paul "LeoNerd" Evans
a6ba41e078
Actually look up required remote server key IDs
...
set.union() is a side-effect-free function that returns the union of two
sets. This clearly wanted .update(), which is the side-effecting mutator
version.
2015-12-18 21:36:42 +00:00
Paul "LeoNerd" Evans
99afb4b750
Ensure that the event that gets persisted is the one that was signed
2015-12-10 17:08:21 +00:00
Paul "LeoNerd" Evans
d7ee7b589f
Merge branch 'develop' into paul/tiny-fixes
2015-12-10 16:21:00 +00:00
Paul "LeoNerd" Evans
dd11bf8a79
Merge branch 'develop' into rav/flatten_sync_response
2015-11-19 17:21:03 +00:00
Paul "LeoNerd" Evans
1cfda3d2d8
Merge branch 'develop' into daniel/forgetrooms
2015-11-19 16:53:13 +00:00
Paul "LeoNerd" Evans
aca6e5bf46
Don't complain if /make_join response lacks 'prev_state' list (SYN-517)
2015-11-13 17:27:25 +00:00
Paul "LeoNerd" Evans
4fbe6ca401
Merge branch 'develop' into paul/tiny-fixes
2015-11-13 17:26:59 +00:00
Paul "LeoNerd" Evans
8a0407c7e6
Merge branch 'develop' into paul/tiny-fixes
2015-11-03 16:08:48 +00:00
Paul "LeoNerd" Evans
9ed784098a
Invoke EventBuilder directly instead of going via the EventBuilderFactory
2015-10-19 17:42:34 +01:00
Paul "LeoNerd" Evans
531e3aa75e
Capture __init__.py
2015-10-19 17:37:35 +01:00
Paul "LeoNerd" Evans
a8795c9644
Use assertIn() instead of assertTrue on the 'in' operator
2015-10-19 15:24:49 +01:00
Paul "LeoNerd" Evans
07b58a431f
Another signing test vector using an 'm.room.message' with content, so that the implementation will have to redact it
2015-10-19 15:00:52 +01:00
Paul "LeoNerd" Evans
0aab34004b
Initial minimial hack at a test of event hashing and signing
2015-10-19 14:40:15 +01:00
Paul "LeoNerd" Evans
aff4d850bd
Add some unit tests of prune_events()
2015-10-16 19:56:46 +01:00
Paul "LeoNerd" Evans
243a79d291
Surely we don't need to preserve 'events_default' twice
2015-10-16 18:25:19 +01:00
Paul "LeoNerd" Evans
9cd5b9a802
Hacky attempt at catching SIGHUP and rotating the logfile around
2015-09-14 19:03:53 +01:00
Paul "LeoNerd" Evans
0db40d3e93
Don't complain about extra .pyc files we find while hunting for database schemas
2015-08-07 17:22:11 +01:00
Paul "LeoNerd" Evans
e3c8e2c13c
Add a --generate-keys option
2015-08-07 16:42:27 +01:00
Paul "LeoNerd" Evans
efe60d5e8c
Only print the pidfile path on startup if requested by a commandline flag
2015-08-07 16:36:42 +01:00
Paul "LeoNerd" Evans
9a3cd1c00d
Correct -H SERVER_NAME in config-missing complaint message
2015-06-16 16:03:35 +01:00
Paul "LeoNerd" Evans
45543028bb
Use the presence cachemap ordering to early-abort the iteration loop
2015-05-07 22:40:10 +01:00
Paul "LeoNerd" Evans
f683b5de47
Store presence cachemap in an ordered dict, so that the newer serials will be at the end
2015-05-07 21:27:53 +01:00
Paul "LeoNerd" Evans
38432d8c25
Merge branch 'develop' into invite_power_level
2015-04-27 17:09:25 +01:00
Paul "LeoNerd" Evans
e1e5e53127
Remove users from the remote_offline_serials list (and clean up empty elements) when they go online again
2015-04-23 19:01:37 +01:00
Paul "LeoNerd" Evans
b3bda8a75f
Don't let the remote offline serial list grow arbitrarily large
2015-04-23 18:40:47 +01:00