Ske
93bf7c6543
Add periodic garbage collection of webhook rate limit cache
2020-04-16 18:18:08 +02:00
Ske
4701f4b56c
Add proper logging of startup errors
2020-03-27 00:02:56 +01:00
Ske
0eb2e8be6f
Skip messages before current user ID is established
2020-03-08 11:10:05 +01:00
Ske
a95d12639d
Handle send message/embed links permission erorrs gracefully
2020-02-24 09:57:16 +01:00
Ske
e9cc8ed424
Add logger bot cleanup support
2020-02-15 14:17:25 +01:00
Ske
dc10a8411a
Disable autoproxy retriggering on edit
2020-02-12 17:44:24 +01:00
Ske
6d5004bf54
Large refactor and project restructuring
2020-02-12 15:16:19 +01:00
Ske
b68e221fc6
Track current shard in Sentry reports
2020-02-12 14:37:11 +01:00
Ske
1386e6743b
Proxy edited messages if the message is the last one in the channel, and the edit introduces proxy tags where there were none previously
2020-02-12 14:21:48 +01:00
Ske
82dfe43d5a
Rework caching
...
This does a *lot* of things. Essentially, it replaces the existing
individual proxy- and autoproxy caches on the bot end with a
global cache (in Core) that handles all the caching at once, and
automatically invalidates the cache once something changes in the
datastore.
This allows us to do proxying and autoproxying with *zero database
queries* (best-case).
2020-02-01 14:40:57 +01:00
Ske
1ea0526ef8
Migrate DI container to Autofac
2020-01-26 01:27:45 +01:00
Ske
83cfb3eb46
Add autoproxy functionality
2020-01-24 20:28:48 +01:00
Ske
57bc576de6
Add autoproxy management commands
2020-01-23 21:20:22 +01:00
Ske
98613c4287
Add system and member privacy support
2020-01-11 16:51:13 +01:00
Grey Himmel
da83f72582
Update Bot.cs
...
- Add note telling users to describe what happened when reporting errors
2020-01-08 20:40:32 +01:00
Ske
4a30e56298
Add basic database schema migration system
2019-12-26 21:43:05 +01:00
Ske
1c184825e3
Use fork of D.NET to potentially resolve issues
2019-12-23 18:36:56 +01:00
Ske
5448f734d4
Try logging *literally everything*
2019-12-23 14:44:20 +01:00
Ske
5ff32ea6b4
Re-enable proxy attachments
2019-12-23 13:55:43 +01:00
Ske
3fdfaeab01
Disable message attachments as a temporary fix
2019-12-23 01:53:01 +01:00
Ske
265184f4f6
Couple tweaks to potentially improve performance
2019-12-23 01:49:21 +01:00
Ske
bbbbb5a046
Fix error on empty message
2019-12-23 01:49:00 +01:00
Ske
4a8dd7e8e3
Oops
2019-12-23 00:31:31 +01:00
Ske
05282fd167
Reuse a singleton HttpClient for proxying
2019-12-23 00:29:04 +01:00
Ske
c70556f5f9
Increase minimum thread pool size
2019-12-23 00:28:19 +01:00
Ske
b6597c79d6
Add temporary ThreadPool trace logging
2019-12-22 23:27:11 +01:00
Ske
b81eda47aa
Expand pk;stats functionality
2019-12-22 12:50:47 +01:00
Ske
93a52ff95a
Add exception logging for dropped connections
2019-12-22 12:08:52 +01:00
Ske
6a55555e48
Attempt a few memory/connection optimizations
2019-12-22 01:08:14 +01:00
Ske
378cba09e5
Add channel blacklists for logging and proxying
...
Necessary database migrations for this commit:
alter table servers add column log_blacklist bigint[] not null default array[]::bigint[];
alter table servers add column blacklist bigint[] not null default array[]::bigint[];
2019-11-03 19:15:50 +01:00
Ske
8d003da091
Remove chunk of commented-out outdated code
2019-11-03 13:37:48 +01:00
Ske
0f48c6879b
Attempt to fix slow/timeout-y bot startup
...
I've noticed the bot's CPU spiking for a few minutes as it's
just connecting, and a lot of shard connections are timing out.
I suspect it might be the overload of messages as the shards
connect and Discord sends it the entire backlog at once. So,
as an interim solution, I'm making it simply discard every
message before the socket is fully connected. Hopefully this
should help reduce the pressure.
2019-10-31 17:21:12 +01:00
Ske
545e8df6a7
Reduce the log level of various common events
2019-10-27 23:44:27 +01:00
Ske
fbb5dbbf5d
Don't embed support server link in error message
2019-10-27 23:01:38 +01:00
Ske
7f55fca625
Make prefix matching case-insensitive
2019-10-27 15:08:33 +01:00
Ske
aed38f37f7
Allow starting bot before all shards are up
2019-10-27 13:01:33 +01:00
Ske
6a73b3bdd6
Refactor data stores, merging the Store classes
2019-10-26 19:45:44 +02:00
Ske
53ae0e3d70
Improve error handling and reporting after command rewrite
2019-10-22 19:31:40 +02:00
Ske
1988b29fbc
Refactor command system
2019-10-05 07:41:00 +02:00
Ske
86d0b24758
Include event ID in Sentry dump
2019-09-02 20:37:24 +02:00
Ske
74e0508065
Increase webhook name limit to 80
2019-08-14 07:16:48 +02:00
Ske
5f79aaf960
Fix API service injection
2019-08-12 06:54:28 +02:00
Ske
a48940476c
Eagerly discard messages before shard init
2019-08-12 06:10:55 +02:00
Ske
7945603cdb
Include invite link in error message
2019-08-12 06:03:20 +02:00
Ske
d3f821a266
Send a request ID on error
2019-08-12 05:56:05 +02:00
Ske
145ecb91ad
Refactor proxy service
2019-08-12 05:47:55 +02:00
Ske
fda98bc25f
Lower message cache size
2019-08-12 05:03:18 +02:00
Ske
c68ce1bdd3
Log gateway latency to console
2019-08-12 04:05:22 +02:00
Ske
aa04d2055e
Avoid deleting messages from the store if they're not webhooks
2019-08-12 03:51:54 +02:00
Ske
423d23faf7
Cache account lookup in memory when proxying
2019-08-12 03:48:08 +02:00