Athanasius
faa2e25d62
Gateway: Properly report 'badly form encoded' to uploaders
...
This currently only applies if the data was also, validly, compressed.
2022-01-09 15:31:39 +00:00
Athanasius
613ef6deab
Gateway: Properly report zlib.decompress() errors to uploaders
...
This also adds some debug/error logging to the code path.
2022-01-09 15:31:39 +00:00
Athanasius
1134a6c9b4
Gateway: Only log first 512 characters of invalid JSON
...
Don't want to spam the logs with up to 1MiB per bad message.
2022-01-06 17:39:01 +00:00
Athanasius
9f219da6a6
Gateway: Expand on logging for interpretation of errors
...
This includes logging the *full* (uncompressed) message if it fails to
parse as JSON.
2022-01-06 17:36:39 +00:00
Athanasius
1371f71217
Gateway: Set up proper logger formatting
...
For some reason the milliseconds portion of the %S timestamp is using a
comma for decimals separator, despite 'locale' saying we're set to (US)
English. /tableflip
2022-01-06 14:06:59 +00:00
Athanasius
377bdd3833
Gateway: Add logging per Accepted request
...
Actually some logging was already there, just the logger had never been
set up properly, but then I decided to make the format of this message
more useful.
2022-01-06 13:54:33 +00:00
Athanasius
0e80c76cb5
Gateway: Set bottle request limit to 1MiB
2022-01-06 13:07:53 +00:00
Athanasius
9359b78301
Gateway: Correct methodS to singular & remove extraneous header
...
* methods != method
* There shouldn't be any need to manually set
Access-Control-Allow-Origin headers now.
2021-07-02 17:02:07 +00:00
Athanasius
2eb8a9fb88
Gateway: Implement a CORS plugin for all routes
...
* Switches all of the routes to use .route(..., method=[...]) so as to
include OPTIONS as well as either POST or GET.
2021-07-02 16:32:19 +00:00
Athanasius
6d9942ece0
Switch bottle to using an 'app' instance.
...
This fixes the problem I was having (on two separate machines, Debian
stretch and Debian buster) with the Gateway not actually sending
messages out port 8500 to the Relay and Monitor.
Something about the '@thing' syntax, or using bare 'run()' must be
interfering with zmq.green. The latter ends up thinking there are no
active/matching sockets to send to[0], despite the sockets definitely
being there (complete with TCP 3-way handshake visible on tcpdump
output).
With the problem:
* no network traffic was observed on port 8500.
* A test sender.send(...) just before the bottle run() call
*did* send the message. A similar test at the start of the
@post('/upload/') function did not succeed.
[0] - I ended up putting debug prints in both python-zmq and the zeromq
'libzmq' libraries, building the Debian packages and installing those
versions. I also ended up using 'gdb' on the process. The end result
of this was to find that the _matching variable (a count of matching
sockets I think) was empty deep in libzmq, when it should be counting
sockets to send to.
This was specifically in zeromq3-4.3.1/src/dist.cpp, in the
void zmq::dist_t::distribute (msg_t *msg_) function. The immediate:
if (_matching == 0) {
test was true. I didn't manage to track down which bit of libzmq code
should have been setting _matching before I 'recursed back up' the call
chain to investigate other things.
2019-10-05 11:23:41 +01:00
AnthorNet
a221ae13c3
Remove uploaderID from public relays to avoid real time tracking of user without consent
2018-01-27 09:37:26 +01:00
AnthorNet
26f0d64745
Small fixes
2018-01-06 12:40:56 +01:00
AnthorNet
32ed86da91
Fix duplicate message not copied
2018-01-05 16:35:57 +01:00
AnthorNet
dd65ba50d1
Temp fix
2018-01-05 15:10:53 +01:00
AnthorNet
313120aa94
Implement tracking stats
2018-01-05 15:06:21 +01:00
AnthorNet
a6546c3628
Ensure CORS available from gateway upload
2017-10-18 15:07:58 +02:00
Jonathan Harris
f9c7eb1d39
Stop rewriting new schemas to old
...
Reverts 04a8f91.
2017-07-03 15:34:39 +01:00
Jonathan Harris
04a8f91b8c
Rewrite schemas during transition period
2017-07-03 12:58:44 +01:00
Jonathan Harris
a959390ff7
Move SSL config to Settings
2017-07-03 12:31:20 +01:00
AnthorNet
e13fffea79
Fix UnicodeDecodeError
2017-06-29 21:18:44 +02:00
AnthorNet
97ed7ad101
Add the new Gateway/Relay and make them act in HTTPS
2017-06-29 14:01:40 +02:00
Jonathan Harris
a925155547
Make gatewayTimestamp strictly conformant.
...
http://json-schema.org/latest/json-schema-validation.html#anchor108
RCF3339: http://tools.ietf.org/html/rfc3339#section-5.6
2016-01-22 17:11:54 +00:00
Jonathan Harris
a70edab1a2
Handle non-ASCII characters in messages, i.e. in the uploaderID field.
2015-12-05 04:39:32 +00:00
James Muscat
802633d3ef
Bind gateway to localhost by default (e.g. and then proxy via nginx)
2015-07-06 16:10:29 +01:00
James Muscat
443882592e
Back out wsgi entry point since it breaks things in complicated ways.
2015-07-01 23:23:47 +01:00
James Muscat
2d6e7d9f38
This just needs to be a list, not a dict.
2015-07-01 22:27:12 +01:00
James Muscat
13a651175d
We still need to configure the gateway when running in wsgi mode!
2015-07-01 22:25:38 +01:00
James Muscat
f591d3a815
Slightly nicer error message.
2015-07-01 21:46:16 +01:00
James Muscat
a2ebb94c7a
Coding standards.
2015-07-01 21:44:42 +01:00
James Muscat
8cdd2b4c84
Add WSGI hook for running gateway through uWSGI.
2015-07-01 21:44:19 +01:00
Jonathan Harris
1f85be3beb
Add reason text to reply for outdated schemas.
2015-06-20 00:28:50 +01:00
AnthorNet
c0d4f4c8b0
Add outdated schema functionnality.
...
Also added shipyard to release.
2015-06-19 22:23:20 +02:00
AnthorNet
ac92ae7076
Removed comment
2015-06-08 10:14:04 +02:00
AnthorNet
6a86ee904f
Make use of pkg_resources to keep egg file zipped
...
Used to keep schemas in egg file
2015-06-08 09:59:20 +02:00
AnthorNet
85ab051b9a
Remove unnecessary stats collector in favor of monitor
2015-06-08 08:20:05 +02:00
AnthorNet
ceaac2be74
Fix PEP8
2015-06-05 16:43:59 +02:00
AnthorNet
2f72fe84fe
Moved _Core/_Conf to core/conf and some UTF8 fixes
2015-06-05 16:08:32 +02:00
James Muscat
6ed5537d71
Merge branch 'master' of https://github.com/jamesremuscat/EDDN
2015-06-05 14:12:22 +01:00
AnthorNet
37fdd5333e
Merge pull request #13 from AnthorNet/Pull-for-James---Release-0.4
...
EDDN Release 0.4
2015-06-05 12:45:25 +02:00
AnthorNet
69f7134a94
Fix wrong argument in gateway
2015-05-07 19:33:59 +02:00
AnthorNet
c7187e90bd
Added topic in Gateway/Relay to allow filtering
2015-05-05 12:37:57 +02:00
AnthorNet
863d5937c7
Remove unnecessary comment
2015-05-04 13:33:58 +02:00
AnthorNet
6639b3a13e
Moved core functions to _Core
2015-05-04 13:21:58 +02:00
AnthorNet
915aee107c
Fix missing schemas in setup
2015-05-04 12:57:40 +02:00
AnthorNet
a80994ae4a
Change conf directory name
2015-05-04 11:41:15 +02:00
James Muscat
c8bba2b880
Tally software+version.
2015-05-01 12:45:08 +01:00
James Muscat
592084973f
Tally each type of message we see, so we can track use of new schemas as
...
they get deployed.
2015-04-28 12:13:33 +01:00
James Muscat
976454c358
Extra stats: uptime and EDDN version.
2015-04-23 09:57:51 +01:00
James Muscat
3fc16cbb0a
Set CORS header to allow status page to read these values.
2015-04-15 15:00:39 +01:00
James Muscat
4c314a9b9b
Keep track of how many messages fail gateway validation.
2015-04-14 17:06:26 +01:00