mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 00:26:07 +02:00
- Introduced ServerStatsReport and ServerStatsCollector for tracking server activity. - Implemented ServerStatsReportService to generate and persist stats reports periodically. - Added configuration options for stats reporting in appsettings and .env.example. - Enhanced logging in ChannelsController and ModerationController to include stats-related actions. - Updated database context and migrations to support new ServerStatsReport entity. - Adjusted logging levels in IrcGatewayService and ChatService for better performance.
103 lines
2.3 KiB
JSON
103 lines
2.3 KiB
JSON
{
|
|
"Urls": "http://0.0.0.0:5000",
|
|
"ConnectionStrings": {
|
|
"DefaultConnection": ""
|
|
},
|
|
"Jwt": {
|
|
"Secret": "CHANGE_ME_minimum_32_characters_long_secret_key",
|
|
"Issuer": "EchoHub.Server",
|
|
"Audience": "EchoHub.Client"
|
|
},
|
|
"Server": {
|
|
"Name": "My EchoHub Server",
|
|
"Description": "A self-hosted EchoHub chat server",
|
|
"PublicServer": false,
|
|
"PublicHosts": [],
|
|
"Tags": [],
|
|
"Admins": [],
|
|
"Registration": "open",
|
|
"DirectoryClaimPath": ""
|
|
},
|
|
"Storage": {
|
|
"Path": "",
|
|
"CleanupIntervalHours": 1,
|
|
"RetentionDays": 30
|
|
},
|
|
"Uploads": {
|
|
"MaxFileSizeMB": 100,
|
|
"MaxImageSizeMB": 10,
|
|
"MaxAudioSizeMB": 10,
|
|
"MaxAvatarSizeMB": 2,
|
|
"MaxAttachmentsPerMessage": 10
|
|
},
|
|
"Spam": {
|
|
"Enabled": true,
|
|
"MaxMessagesPerWindow": 8,
|
|
"WindowSeconds": 5,
|
|
"MaxDuplicateMessages": 3,
|
|
"AutoMuteMinutes": 5,
|
|
"ViolationThreshold": 5,
|
|
"ViolationWindowMinutes": 5,
|
|
"MaxJoinsPerWindow": 25,
|
|
"JoinWindowSeconds": 30,
|
|
"MaxChannelCreatesPerWindow": 3,
|
|
"ChannelCreateWindowMinutes": 10
|
|
},
|
|
"Encryption": {
|
|
"Key": "",
|
|
"EncryptDatabase": false
|
|
},
|
|
"ServerLogs": {
|
|
"Enabled": true,
|
|
"RoomName": "server-logs",
|
|
"MinRole": "Mod",
|
|
"MinLevel": "Information",
|
|
"BacklogLines": 100,
|
|
"LogDirectory": "logs",
|
|
"LogFilePattern": "echohub-server-*.log"
|
|
},
|
|
"Stats": {
|
|
"Enabled": true,
|
|
"IntervalHours": 6,
|
|
"RetentionDays": 90
|
|
},
|
|
"Irc": {
|
|
"Enabled": false,
|
|
"Port": 6667,
|
|
"TlsEnabled": false,
|
|
"TlsPort": 6697,
|
|
"TlsCertPath": "",
|
|
"TlsCertPassword": "",
|
|
"ServerName": "echohub",
|
|
"Motd": "Welcome to EchoHub IRC Gateway!",
|
|
"PublicBaseUrl": ""
|
|
},
|
|
"Cors": {
|
|
"AllowedOrigins": []
|
|
},
|
|
"Serilog": {
|
|
"MinimumLevel": {
|
|
"Default": "Information",
|
|
"Override": {
|
|
"Microsoft": "Warning",
|
|
"Microsoft.AspNetCore": "Warning",
|
|
"Microsoft.EntityFrameworkCore": "Warning",
|
|
"System": "Warning"
|
|
}
|
|
},
|
|
"WriteTo": [
|
|
{ "Name": "Console" },
|
|
{
|
|
"Name": "File",
|
|
"Args": {
|
|
"path": "logs/echohub-server-.log",
|
|
"rollingInterval": "Day",
|
|
"retainedFileCountLimit": 14,
|
|
"outputTemplate": "{Timestamp:yyyy-MM-dd HH:mm:ss.fff} [{Level:u3}] {Message:lj}{NewLine}{Exception}"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"AllowedHosts": "*"
|
|
}
|