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
Ske
99ec3cd355
Instrument and log database queries
2019-08-12 02:05:30 +02:00
Ske
ea476d4051
Yield event handlers to task queue before handling
2019-08-12 01:15:55 +02:00
Ske
a689d61788
Collect webhook response time and shard latency
2019-08-12 00:57:23 +02:00
Ske
b593c32950
Add more extensive debug-level logging
...
- Logging of event IDs
- Logging of command invocations (at DEBUG)
2019-08-12 00:07:29 +02:00
Ske
942022d408
Track database handles over metrics
2019-08-11 22:56:20 +02:00
Ske
3f6a260fac
Properly associate trigger events with Sentry errors
2019-08-09 12:47:46 +02:00
Ske
11eabe2e3d
Update D.NET version and add bulk deletion support
2019-07-21 17:16:04 +02:00
Ske
4fe80749c4
Fix compiler warnings CS1998 and CS4014
2019-07-21 16:43:28 +02:00
Ske
4f33ed84ac
Disable message caching
...
This will potentially fix the memory leaking issues.
2019-07-20 23:10:26 +02:00
Ske
b85c79c57b
Expand logging capability
2019-07-19 02:29:08 +02:00
Ske
0b4335ccaa
Add logger to API service setup
2019-07-18 17:26:06 +02:00
Ske
961bfe9094
Add basic logging framework
2019-07-18 17:13:42 +02:00
Ske
a188c64a0e
Clean up unused imports
2019-07-17 13:38:23 +02:00
Ske
02b41413b3
Add basic InfluxDB reporter
2019-07-16 23:34:22 +02:00
Ske
2d58705e85
Add basic WIP metrics system
2019-07-16 21:59:06 +02:00
Ske
51b9afddea
Properly format Sentry message breadcrumbs
2019-07-16 01:32:08 +02:00
Ske
2aae92406a
Remove Sentry scope setup for now
2019-07-16 01:28:55 +02:00
Ske
d47e7e7a06
Don't process messages until we're fully connected to shard zero
2019-07-15 21:29:45 +02:00
Ske
18e4d7c9ac
Add preliminary Sentry support
2019-07-15 21:02:50 +02:00
Ske
7475980bd3
Fix sharding issue hopefully for good
2019-07-15 17:23:27 +02:00
Ske
1f3b0c6de6
Properly initialize a sharded client
2019-07-15 17:16:14 +02:00
Ske
ebc311ecc3
Remove message query reaction AND open DB connection when obtaining one
2019-07-14 05:23:27 +02:00
Ske
c6905f4ca1
Allow single quotes in command arguments
2019-07-11 22:34:38 +02:00
Ske
d829630a35
Fix database connection pool contention (maybe)
...
Instead of acquiring a connection per service per request, we
acquire connections more often but at a more granular level, meaning
they're also disposed of more quickly instead of staying for a long time
in case of long-running commands or leaks.
2019-07-11 21:25:23 +02:00
Ske
ca56fd419b
Fix various issues with proxying and webhook caching
2019-07-10 23:16:17 +02:00
Ske
9b488d1ab5
Add more lenient prefix parsing
2019-07-10 10:01:06 +02:00
Ske
4874879979
Add basic API, only with system endpoints
2019-07-09 20:39:29 +02:00
Ske
b5c9793578
Add config file loading
2019-07-01 00:55:41 +02:00
Ske
7eeaea39fe
Proxy messages with a mention before tags
2019-06-27 10:38:45 +02:00
Ske
652afffb8c
Add importing and exporting function
2019-06-14 22:48:19 +02:00
Ske
7e9b7dcc98
Add switch commands for adding and moving
2019-06-13 16:53:04 +02:00
Ske
4c6790432b
Add system linking commands
2019-05-21 23:40:26 +02:00
Ske
8b8ec80944
Move database/mapper setup code to Core
2019-05-19 22:03:45 +02:00
Ske
08afa2543b
Add member avatar edit command
...
This also refactors a large portion of the DI toolchain, since
I discovered that you shouldn't be reusing IDbConnection objects.
Instead, most services and stores are now declared transient, and
the webhook cache has been moved to a database-independent storage
singleton by itself.
2019-05-17 01:23:09 +02:00
Ske
62dc2ce78e
bot: add birthday command
2019-05-13 22:44:49 +02:00
Ske
9b49f22048
bot: enable .NET configuration management
2019-05-08 20:08:56 +02:00
Ske
c5d2b7c251
refactor project structure
2019-05-08 00:06:27 +02:00