Benjamin Sergeant
|
b8265bf7f2
|
(ws) -q option imply info log level, not warning log level
|
2020-08-11 15:44:06 -07:00 |
|
Benjamin Sergeant
|
e7c4f0b171
|
add documentation for the websocket send callback and the send return type (fix #239)
|
2020-08-11 11:24:00 -07:00 |
|
Benjamin Sergeant
|
12f36b61ff
|
(websocket server) Handle programmer error when the server callback is not registered properly (fix #227)
|
2020-08-06 04:40:32 -07:00 |
|
Benjamin Sergeant
|
6e47c62c06
|
(ws) Add a new ws sub-command, push_server. This command runs a server which sends many messages in a loop to a websocket client. We can receive above 200,000 messages per second (cf #235).
|
2020-08-02 12:41:34 -07:00 |
|
Benjamin Sergeant
|
bcae7f326d
|
(ws) Add a new ws sub-command, echo_client. This command send a message to an echo server, and send back to a server whatever message it does receive. When connecting to a local ws echo_server, on my MacBook Pro 2015 I can send/receive around 30,000 messages per second. (cf #235)
|
2020-08-02 12:09:13 -07:00 |
|
Benjamin Sergeant
|
6f0307fb35
|
(build) make using zlib optional, with the caveat that some http and websocket features are not available when zlib is absent
|
2020-07-31 22:54:57 -07:00 |
|
Benjamin Sergeant
|
2e3d625c1e
|
(websocket client) onProgressCallback not called for short messages on a websocket (fix #233)
|
2020-07-29 17:47:33 -07:00 |
|
Benjamin Sergeant
|
4d51098c86
|
(websocket client) heartbeat is not sent at the requested frequency (fix #232)
|
2020-07-29 11:24:42 -07:00 |
|
Benjamin Sergeant
|
e85f975ab0
|
compiler warning fixes
|
2020-07-28 21:46:26 -07:00 |
|
Benjamin Sergeant
|
dc77d62a5d
|
(ixcobra) CobraConnection: unsubscribe from all subscriptions when disconnecting
|
2020-07-28 10:32:18 -07:00 |
|
Benjamin Sergeant
|
4f41f209a2
|
(socket utility) move ix::getFreePort to ixwebsocket library
|
2020-07-27 18:17:13 -07:00 |
|
Benjamin Sergeant
|
847fc142d1
|
(ixwebsocket server) change legacy api with 2 nested callbacks, so that the first api takes a weak_ptr<WebSocket> as its first argument
|
2020-07-25 11:42:07 -07:00 |
|
Benjamin Sergeant
|
0388459bd0
|
(ixwebsocket) add WebSocketProxyServer, from ws. Still need to make the interface better.
|
2020-07-25 11:26:06 -07:00 |
|
Benjamin Sergeant
|
e34f1c30d6
|
(ws) port broadcast_server sub-command to the new server API
|
2020-07-24 14:35:07 -07:00 |
|
Benjamin Sergeant
|
b146e93a3a
|
(unittest) port most unittests to the new server API
|
2020-07-24 12:49:36 -07:00 |
|
Benjamin Sergeant
|
9957ec9724
|
(ws) port ws snake to the new server API
|
2020-07-24 12:33:17 -07:00 |
|
Benjamin Sergeant
|
e78019dad6
|
(ws) port ws transfer to the new server API
|
2020-07-24 11:52:16 -07:00 |
|
Benjamin Sergeant
|
0f026c5da2
|
(websocket client) reset WebSocketTransport onClose callback in the WebSocket destructor
|
2020-07-24 10:03:29 -07:00 |
|
Benjamin Sergeant
|
c26a2d5d39
|
(websocket server) reset client websocket callback when the connection is closed
|
2020-07-24 09:41:02 -07:00 |
|
Benjamin Sergeant
|
2798886c0b
|
(websocket server) add a new simpler API to handle client connections / that API does not trigger a memory leak while the previous one did
|
2020-07-23 19:29:41 -07:00 |
|
Benjamin Sergeant
|
ffde283a4b
|
(build) merge platform specific files which were used to have different implementations for setting a thread name into a single file, to make it easier to include every source files and build the ixwebsocket library (fix #226)
|
2020-07-17 11:58:06 -07:00 |
|
Benjamin Sergeant
|
87709c201e
|
(socket server) bump default max connection count from 32 to 128
|
2020-07-10 17:11:11 -07:00 |
|
Benjamin Sergeant
|
e70d83ace1
|
(snake) implement super simple stream sql expression support in snake server
|
2020-07-10 16:10:59 -07:00 |
|
Benjamin Sergeant
|
fbd17685a1
|
(socket+websocket+http+redis+snake servers) expose the remote ip and remote port when a new connection is made (see #222) / only ipv4 is handled
|
2020-07-08 12:10:35 -07:00 |
|
Benjamin Sergeant
|
7c1b57c8cd
|
(cmake) change the way zlib and openssl are searched
|
2020-07-07 10:58:20 -07:00 |
|
Benjamin Sergeant
|
dddf00e3b1
|
(cobra python bots) remove the test which stop the bot when events do not follow cobra metrics system schema with an id and a device entry
|
2020-07-06 16:15:24 -07:00 |
|
Benjamin Sergeant
|
cc47fb1c83
|
(cobra bots) remove bots which is not required now that we can use Python extensions
|
2020-06-26 16:49:08 -07:00 |
|
Benjamin Sergeant
|
68c97da518
|
(cmake) new python code is optional and enabled at cmake time with -DUSE_PYTHON=1
|
2020-06-25 10:05:02 -07:00 |
|
Benjamin Sergeant
|
615f1778c3
|
new cobra to python bot (still sending to statsd)
values + string building can be done in python (we are embedding it)
|
2020-06-24 23:21:19 -07:00 |
|
Benjamin Sergeant
|
c45b197c85
|
(cobra metrics to statsd bot) fps slow frame info : do not include os name
|
2020-06-19 18:10:49 -07:00 |
|
Benjamin Sergeant
|
78713895dd
|
(cobra metrics to statsd bot) send info about memory warnings
|
2020-06-19 17:46:59 -07:00 |
|
Benjamin Sergeant
|
10c014bf98
|
(http client) fix deadlock when following redirects
|
2020-06-19 00:11:06 -07:00 |
|
Benjamin Sergeant
|
9bb3643fc7
|
(cobra metrics to statsd bot) send info about net requests
|
2020-06-18 11:25:48 -07:00 |
|
Benjamin Sergeant
|
565a08b229
|
(cobra client and bots) add batch_size subscription option for retrieving multiple messages at once
|
2020-06-17 17:13:45 -07:00 |
|
Benjamin Sergeant
|
558daf8911
|
(websocket) WebSocketServer is not a final class, so that users can extend it (fix #215)
|
2020-06-15 18:29:42 -07:00 |
|
Benjamin Sergeant
|
7ba7ff4b2a
|
(cobra bots) minor aesthetic change, in how we display http headers with a : then space as key value separator instead of :: with
no space
|
2020-06-15 16:09:31 -07:00 |
|
Benjamin Sergeant
|
aa142df486
|
(cobra metrics to statsd bot) change from a statsd type of gauge to a timing one
|
2020-06-12 13:47:01 -07:00 |
|
Benjamin Sergeant
|
5e200a440f
|
(redis cobra bots) capture most used devices in a zset
|
2020-06-11 18:49:45 -07:00 |
|
Benjamin Sergeant
|
ac9710d5d6
|
(ws) add bare bone redis-cli like sub-command, with command line editing powered by libnoise
|
2020-06-11 17:30:42 -07:00 |
|
Benjamin Sergeant
|
7603d1a71b
|
(redis cobra bots) ws cobra metrics to redis / hostname invalid parsing
|
2020-06-11 08:33:36 -07:00 |
|
Benjamin Sergeant
|
d0cd4aed5a
|
(redis cobra bots) xadd with maxlen + fix bug in xadd client implementation and ws cobra metrics to redis command argument parsing
|
2020-06-11 08:20:03 -07:00 |
|
Benjamin Sergeant
|
c5aadffa08
|
(redis cobra bots) update the cobra to redis bot to use the bot framework, and change it to report fps metrics into redis streams.
|
2020-06-10 22:30:55 -07:00 |
|
Benjamin Sergeant
|
2ecf5d8a5a
|
(statsd cobra bots) statsd improvement: prefix does not need a dot as a suffix, message size can be larger than 256 bytes, error handling was invalid, use core logger for logging instead of std::cerr
|
2020-06-04 09:37:16 -07:00 |
|
Benjamin Sergeant
|
b008c97c83
|
(http server) support gzip compression
|
2020-05-29 16:49:29 -07:00 |
|
Benjamin Sergeant
|
33916869f1
|
add simple doc link for multipart uploads - fix #209
|
2020-05-27 10:38:32 -07:00 |
|
Benjamin Sergeant
|
bd39e69185
|
Update index.md
|
2020-05-21 09:42:15 -07:00 |
|
Benjamin Sergeant
|
16eb269e1e
|
bump version for (compiler fix) support clang 5 and earlier (contributed by @LunarWatcher) #206
|
2020-05-20 10:58:30 -07:00 |
|
Benjamin Sergeant
|
2319dec278
|
(cmake) revert CMake changes to fix #203 and be able to use an external OpenSSL
|
2020-05-20 10:56:58 -07:00 |
|
Liz3
|
93fd44813a
|
extend docs (#204)
|
2020-05-18 09:22:25 -07:00 |
|
Benjamin Sergeant
|
54d4d81bf4
|
(cmake) make install cmake files optional to not conflict with vcpkg
See https://github.com/microsoft/vcpkg/pull/11030
|
2020-05-17 20:36:46 -07:00 |
|
Benjamin Sergeant
|
ea207d8199
|
(windows + tls) mbedtls is the default windows tls backend + add ability to load system certificates with mbdetls on windows
|
2020-05-17 20:36:46 -07:00 |
|
Benjamin Sergeant
|
1af39bf0eb
|
(ixbots) add options to limit how many messages per minute should be processed
|
2020-05-12 21:40:17 -07:00 |
|
Benjamin Sergeant
|
2e904801a0
|
(ixbots) add new class to configure a bot to simplify passing options around
|
2020-05-12 19:08:16 -07:00 |
|
Benjamin Sergeant
|
4773af8f2f
|
(openssl tls) (openssl < 1.1) logic inversion - crypto locking callback are not registered properly
|
2020-05-08 09:54:42 -07:00 |
|
Benjamin Sergeant
|
c1403df74a
|
(cmake) default TLS back to mbedtls on Windows Universal Platform
|
2020-05-08 09:31:53 -07:00 |
|
Benjamin Sergeant
|
0772ef7ef5
|
(cobra bots) add a --heartbeat_timeout option to specify when the bot should terminate because no events are received
|
2020-05-06 22:01:48 -07:00 |
|
Benjamin Sergeant
|
6c205b983e
|
(openssl tls) when OpenSSL is older than 1.1, register the crypto locking callback to be thread safe. Should fix lots of CI failures
|
2020-05-06 16:26:30 -07:00 |
|
Benjamin Sergeant
|
4f17cd5e74
|
(cobra bots) do not use a queue to store messages pending processing, let the bot handle queuing
|
2020-05-04 15:45:11 -07:00 |
|
Benjamin Sergeant
|
b45980f0f6
|
(http client) better current request cancellation support when the HttpClient destructor is invoked (see #189)
|
2020-04-29 11:53:23 -07:00 |
|
Benjamin Sergeant
|
fbca513008
|
bump version
|
2020-04-27 12:36:56 -07:00 |
|
Benjamin Sergeant
|
5632360fbd
|
(http client) Set default values for most HttpRequestArgs struct members (fix #185)
|
2020-04-27 09:43:31 -07:00 |
|
Benjamin Sergeant
|
0ab04f51fe
|
(ssl) Default to OpenSSL on Windows, since it can load the system certificates by default
|
2020-04-25 15:36:31 -07:00 |
|
Benjamin Sergeant
|
287e48962f
|
bump version number
|
2020-04-25 11:41:58 -07:00 |
|
Benjamin Sergeant
|
2802cad8c4
|
more tls in memory certs doc + bump file format
|
2020-04-24 15:50:39 -07:00 |
|
Benjamin Sergeant
|
cd5fae6a5b
|
generate a compilation database when building with make for the default target, so that clang-tidy can be used
|
2020-04-22 14:14:09 -07:00 |
|
Benjamin Sergeant
|
36257cbfe4
|
update build doc
|
2020-04-18 03:49:26 -07:00 |
|
Benjamin Sergeant
|
9d79596629
|
(ixbots) display sent/receive message, per seconds as accumulated
|
2020-04-17 09:56:09 -07:00 |
|
Benjamin Sergeant
|
0b6fd989f5
|
(ws) add a --logfile option to configure all logs to go to a file
|
2020-04-17 09:35:47 -07:00 |
|
Benjamin Sergeant
|
a2abe861d3
|
(cobra bots) add a utility class to factor out the common bots features (heartbeat) and move all bots to used it + convert cobra_subscribe to be a bot and add a unittest for it
|
2020-04-16 21:58:10 -07:00 |
|
Benjamin Sergeant
|
0f5d15aa11
|
(cobra bots) add a utility class to factor out the common bots features (heartbeat) and move cobra to sentry bot to use it
|
2020-04-16 14:49:49 -07:00 |
|
Benjamin Sergeant
|
9b8cfa0a37
|
(websocket) add a positive number to the heartbeat message sent, incremented each time the heartbeat is sent
|
2020-04-15 18:33:36 -07:00 |
|
Benjamin Sergeant
|
64754df66c
|
(ixcobra) change cobra event callback to use a struct instead of several objects, which is more flexible/extensible
|
2020-04-15 17:38:39 -07:00 |
|
Benjamin Sergeant
|
386ef3ab04
|
(ixcobra) make CobraConnection_EventType an enum class (CobraEventType)
|
2020-04-15 16:59:17 -07:00 |
|
Benjamin Sergeant
|
2c4bf8f4bd
|
(ixsentry) add a library method to upload a payload directly to sentry
|
2020-04-14 22:02:51 -07:00 |
|
Benjamin Sergeant
|
bea582c208
|
cobra subscriber in fluentd mode insert a created_at timestamp entry
|
2020-04-14 15:30:30 -07:00 |
|
Benjamin Sergeant
|
432f0570f4
|
(websocket) WebSocketMessagePtr is a unique_ptr instead of a shared_ptr
|
2020-04-13 21:56:01 -07:00 |
|
Benjamin Sergeant
|
37a054723a
|
(websocket) use persistent member variable as temp variables to encode/decode zlib messages in order to reduce transient allocations
|
2020-04-13 21:38:15 -07:00 |
|
Benjamin Sergeant
|
c57cf413fb
|
(ws) add a --runtime option to ws cobra_subscribe to optionally limit how much time it will run
|
2020-04-13 19:03:53 -07:00 |
|
Benjamin Sergeant
|
f1c106728b
|
(third_party deps) fix #177, update bundled spdlog to 1.6.0
|
2020-04-11 13:32:16 -07:00 |
|
Benjamin Sergeant
|
f9d75c9374
|
(windows) when using OpenSSL, the system store is used to populate the cacert. No need to ship a cacert.pem file with your app.
|
2020-04-04 18:33:01 -07:00 |
|
Benjamin Sergeant
|
d1cd5e62ac
|
update doc
|
2020-04-04 17:54:15 -07:00 |
|
Benjamin Sergeant
|
f3b97097cd
|
(windows) ci: windows build with TLS (mbedtls) + verify that we can be build with OpenSSL
|
2020-04-04 17:49:52 -07:00 |
|
Benjamin Sergeant
|
9a23c5aaac
|
(doc) use c++ instead of cpp to mark a block of C++ code
|
2020-03-31 20:29:40 -07:00 |
|
Benjamin Sergeant
|
d81e4d4fc0
|
setHeartBeatPeriod -> setPingInterval (in doc + disabled unittests)
|
2020-03-31 18:36:50 -07:00 |
|
Benjamin Sergeant
|
b6abc12ecd
|
Add documentation about how to make a pull request to get the latest version of the package in vcpkg (#173)
|
2020-03-31 15:58:01 -07:00 |
|
Benjamin Sergeant
|
1d3db5f75b
|
(cobra to statsd bot) add ability to extract a numerical value and send a timer event to statsd, with the --timer option
|
2020-03-30 16:08:47 -07:00 |
|
Benjamin Sergeant
|
e465f7af52
|
(cobra to statsd bot) bot init was missing + capture socket error
|
2020-03-29 22:03:27 -07:00 |
|
Benjamin Sergeant
|
f8bf1fe7cd
|
(cobra to statsd bot) add ability to extract a numerical value and send a gauge event to statsd
|
2020-03-29 19:32:43 -07:00 |
|
Benjamin Sergeant
|
cfa5718e40
|
(ws cobra subscriber) use a Json::StreamWriter to write to std::cout, and save one std::string allocation for each message printed
|
2020-03-29 15:24:46 -07:00 |
|
Benjamin Sergeant
|
40c619c1ec
|
(docker) trim down docker image (300M -> 12M) / binary built without symbol and size optimization, and source code not copied over
|
2020-03-29 13:06:44 -07:00 |
|
Benjamin Sergeant
|
22b02e0e5c
|
update doc
|
2020-03-28 10:46:42 -07:00 |
|
Benjamin Sergeant
|
771ebb2a4c
|
(mac ssl) rename DarwinSSL -> SecureTransport (see this too -> https://github.com/curl/curl/issues/3733)
|
2020-03-26 19:40:52 -07:00 |
|
Benjamin Sergeant
|
0fffb1e894
|
(websocket) fix data race accessing _socket object without mutex protection when calling wakeUpFromPoll in WebSocketTransport.cpp
|
2020-03-26 19:31:59 -07:00 |
|
Benjamin Sergeant
|
d2db7310ff
|
(ixcobra) add explicit event types for handshake, authentication and subscription failure, and handle those by exiting in ws_cobra_subcribe and friends
|
2020-03-26 18:54:28 -07:00 |
|
Benjamin Sergeant
|
37cb2cc266
|
(ws connect) display statistics about how much time it takes to stop the connection / cf #168
|
2020-03-24 20:29:09 -07:00 |
|
Benjamin Sergeant
|
179e17895d
|
unique_ptr for sockets
|
2020-03-24 12:48:55 -07:00 |
|
Benjamin Sergeant
|
9f818c7acf
|
(socket) selectInterrupt member is an unique_ptr instead of being a shared_ptr
|
2020-03-24 10:00:41 -07:00 |
|
Benjamin Sergeant
|
9dcc2538ae
|
(websocket) reset per-message deflate codec everytime we connect to a server/client
|
2020-03-23 18:46:30 -07:00 |
|
Benjamin Sergeant
|
f41a54186c
|
(websocket) fix #167, a long standing issue with sending empty messages with per-message deflate extension (and hopefully other zlib bug)
|
2020-03-23 15:21:53 -07:00 |
|
Benjamin Sergeant
|
a0ffb2ba53
|
cobra to statsd bot ported to windows + add unittest
|
2020-03-22 19:37:04 -07:00 |
|