我将Serilog添加到我的应用程序中,Console Sink工作得很好。然后我将MySQL接收器添加到配置中。我的设置是:
"Serilog": {
"Using": [ "Serilog.Sinks.Console", "Serilog.Sinks.MySQL" ],
"MinimumLevel": "Debug",
"WriteTo": [
{ "Name": "Console" },
{
"Name": "MySQL",
"Args": {
"connectionString": "server=<server>;uid=<username>;pwd=<password>;database=logging_database",
"tableName": "logging",
"storeTimestampInUtc": true
}
}
],
}
我可以使用phpMyAdmin访问数据库,所以我知道它正在运行。
我得到的错误是:
Error: 0 : Unable to connect to any of the specified MySQL hosts.
有没有人看过这个或知道如何解决它????
问题似乎与名称解析有关。我连接的MySql服务器正在另一台服务器上托管。我在一台备用机器上安装了一个快速安装,只是使用了IP地址,它工作正常。所以,在预感,我尝试使用IP地址而不是名称,它工作。
我还必须在连接字符串中添加SslMode = none。我发现接收器没有优雅地处理不支持SSL的连接。