R Tyler Croy
bd3eb822e5
Update the workflow to deal with pull requests to main
2020-11-04 13:38:15 -08:00
R Tyler Croy
78ad170d6d
Merge pull request #48 from reiseburo/new-deps
...
Upgrade a number of dependencies
2020-10-29 10:49:06 -07:00
R Tyler Croy
3e092a0550
Upgrade a number of dependencies
2020-10-29 10:06:06 -07:00
R Tyler Croy
938c5ae38f
Merge pull request #47 from reiseburo/simd
...
Enable the use of simd-json on certain platforms
2020-09-15 09:07:23 -07:00
R Tyler Croy
3b3b4fef4c
Activate testing with simd in CI
2020-09-07 09:51:40 -07:00
R Tyler Croy
03abb26b3d
Change the prototype of from_str to allow &mut str in order to allow for simd-json
...
No performance numbers yet or anything else substantial, but this does at least
pass the unit tests.
Unfortunately there _is_ an `unsafe` call in this simd_json helper code which
does an unsafe &str.as_bytes_mut().
2020-09-07 09:50:35 -07:00
R Tyler Croy
5c42097621
cargo update
2020-09-07 09:50:35 -07:00
R Tyler Croy
deff9bd786
Introduce the json module to handle optionally supporting simd-json or stock serde
2020-09-07 09:50:35 -07:00
R Tyler Croy
70b4f4598f
Add the `simd` feature to enable simd-json
...
This doesn't yet work, but this is the cargo part of the implementation
2020-09-07 09:50:35 -07:00
R Tyler Croy
67a47a3b73
Merge pull request #46 from Atul9/add-cargo-fmt-to-github-actions
...
Add cargo fmt to github actions
2020-07-19 10:21:20 -07:00
Atul Bhosale
c8051d88e7
Add cargo fmt to github actions
2020-07-19 22:11:47 +05:30
R Tyler Croy
77afd83174
Merge pull request #45 from Atul9/cargo-fmt
...
Format code using 'cargo fmt'
2020-07-18 12:34:03 -07:00
Atul Bhosale
e9c2f73ef2
Format code using 'cargo fmt'
2020-07-18 23:36:03 +05:30
R Tyler Croy
78fda3a7f4
Merge pull request #43 from reiseburo/more-perf
...
Handle the producing of each message to Kafka in a task
2020-06-23 10:07:28 -07:00
R Tyler Croy
900a22d750
Handle the producing of each message to Kafka in a task
...
Without launching the kafka producing in its own task, it appears that things
get clogged up whenever the network service is under load.
Appears to speed things up
Some load test notes
100k messages:
`hotdog-loadtest.yml`
perf branch: 48.290s
0.3.1: 48.685
0.2.1: 55.341
`hotdog.yml`
0.2.1 with release build and RUST_LOG=info: 13.540s
0.3.2 built off master (release): 2:01.94
0.3.3 with a task::spawn per message: 7.664
See #41
2020-06-22 23:06:37 -07:00
R Tyler Croy
c2200b4e6d
Merge pull request #42 from reiseburo/performance-regression-41
...
Attempt to improve performance in 0.3.x
2020-06-22 15:47:26 -07:00
R Tyler Croy
4a6ede26e9
Explicitly yield inside of the connection handling loop to allow futures to execute
...
This comes after some really great debugging by @stjepang with the help of this
nifty little snippet:
https://gist.github.com/stjepang/9bdf8d70d0745ce2a6a5e3d47b12569c
Fixes #41
2020-06-22 15:37:33 -07:00
R Tyler Croy
d3abfd542b
Add the loadtest profile
2020-06-22 11:51:26 -07:00
R Tyler Croy
d196306a55
Revert "Use async-std 1.5.0"
...
This reverts commit 902458bcef85de66b676c7bd517723f857379867.
2020-06-22 11:06:01 -07:00
R Tyler Croy
65956ff620
Use async-std 1.5.0
2020-06-22 11:06:01 -07:00
R Tyler Croy
aa7c16177d
Allow the generate script to take arbitrary user input
2020-06-22 11:06:01 -07:00
R Tyler Croy
c9b02e5c0b
Checkpoint some performance testing commits
2020-06-22 08:46:01 -07:00
R Tyler Croy
cab30270bd
cargo update
2020-06-21 21:13:08 -07:00
R Tyler Croy
5a6a76990b
Switch the HashMap+Mutex over to Dashmap
...
Hopefully Dashmap ends up with improved performance for 🌭
2020-06-21 21:10:24 -07:00
R Tyler Croy
bf9a534c72
Tinkering about,, WIP
2020-06-10 20:20:35 -07:00
R Tyler Croy
3bb74ecfd4
cargo fmt
2020-06-10 16:15:55 -07:00
R Tyler Croy
52d8bd57a7
cargo update
2020-06-10 16:15:44 -07:00
R Tyler Croy
fa34218f9b
Merge pull request #39 from reiseburo/new-tide
...
Upgrade to tide 0.10.0
2020-06-05 21:35:57 -07:00
R Tyler Croy
730a5e1406
Upgrade to tide 0.10.0
2020-06-05 21:29:12 -07:00
R Tyler Croy
90632e49da
Tidy up the doc
2020-05-31 22:13:14 -07:00
R Tyler Croy
8bc5f471c8
Document the `global.status` configuration options
2020-05-31 22:11:24 -07:00
R Tyler Croy
f3f660af57
Merge pull request #37 from reiseburo/health-check-7
...
Implement health checks and upgrade to async-std 1.6.0
2020-05-31 20:04:39 -07:00
R Tyler Croy
f0dd1240cd
Upgrade to async-std 1.6.0 (smol!) and drop crossbeam for channels
...
I didn't know that async-std had channels, so here we are.
2020-05-31 19:13:57 -07:00
R Tyler Croy
b8abec807c
Implement the health check
...
fixes #7
2020-05-31 19:13:57 -07:00
R Tyler Croy
85a696a1eb
Switch main to use the async_std::main attribute
2020-05-31 15:13:18 -07:00
R Tyler Croy
cdc47ae878
Pin tide to 0.8.1. and async-std to 1.5.0
...
It seems that hotdog cannot work properly on async-std 1.6.0 which switches to
smol as its runtime. It seems to be that the TcpListener.incoming().next().await
in the accept_loop will never return properly
2020-05-31 15:13:18 -07:00
R Tyler Croy
648b7881ac
Add the optional status configuration for health checks and other info
...
See #7
2020-05-31 15:13:18 -07:00
R Tyler Croy
39dca3223c
Fix minor configuration issue I noticed while testing. `tls` should be optional
2020-05-29 16:52:59 -07:00
R Tyler Croy
3a6363541c
Add some additional log information when failing to parse messages
2020-05-29 16:52:35 -07:00
R Tyler Croy
59ed0ade69
Merge pull request #34 from reiseburo/jmespath-optimize-32
...
Implement per-connection caching of JMESPath compilations
2020-05-29 16:51:57 -07:00
R Tyler Croy
016b1ae52d
Implement per-connection caching of JMESPath compilations
...
This should further reduce the amount of CPU time spent per log line
Fixes #32
2020-05-29 16:37:46 -07:00
R Tyler Croy
8f6ae815f3
Merge pull request #33 from reiseburo/smaller-release
...
Optimize the size of the release binary
2020-05-29 16:12:24 -07:00
R Tyler Croy
23104cba3f
Merge branch 'master' into smaller-release
2020-05-29 16:05:06 -07:00
R Tyler Croy
7e61736e95
Optimize the size of the release binary
...
This cuts things down 5MB, fancy
2020-05-29 15:15:58 -07:00
R Tyler Croy
b3ae634dfc
Merge pull request #30 from reiseburo/match-on-fields-15
...
Implement support for matching rules on different fields
2020-05-25 10:05:06 -07:00
R Tyler Croy
71f9a88adc
Implement support for matching rules on different fields
...
Right now this only supports a subset of the total fields available in syslog to
keep things simple since 🌭 is supporting both RFC 5424 and RFC 3164
syslog. 🙀
Fixes #15
2020-05-25 09:54:00 -07:00
R Tyler Croy
69cf9904eb
Merge pull request #29 from reiseburo/refactor-serve-16
...
Refactor and cleanup the main module and server variants
2020-05-24 15:44:14 -07:00
R Tyler Croy
e326f51a19
Ensure hotdog.connections is only decremented when the client actually disconnects
2020-05-24 15:30:27 -07:00
R Tyler Croy
b96410ea44
Restore connection count gauge which was lost in the scuffle
2020-05-24 15:12:45 -07:00
R Tyler Croy
7f0b546c11
Clean up some test imports I missed :face_palm:
2020-05-24 15:02:00 -07:00