我正在使用SQL Server的Telegraf输入插件(https://github.com/influxdata/telegraf/tree/master/plugins/inputs/sqlserver)来收集指标并向InfluxDB报告.它适用于SQL Server,但虽然它支持Azure SQL数据库,但文档有点稀疏.
应该像这样创建数据库用户:
CREATE LOGIN [telegraf] WITH PASSWORD = N'password';
GRANT VIEW SERVER STATE TO [telegraf];
GRANT VIEW ANY DEFINITION TO [telegraf];
Run Code Online (Sandbox Code Playgroud)
这适用于SQL Server,但在Azure中它失败:
此版本的SQL Server不支持安全类"服务器".
我想知道我需要批准什么才能以最好的方式解决这个问题.我们在弹性池中的同一台服务器上运行了大量数据库,所以如果可能的话,我想使用登录主服务器的单个用户,同时收集所有数据库的指标(工作方式)与SQL Server).如果这是不可能的,我可以配置多个登录并一次处理一个数据库.
也许我可以VIEW DEFINITION在数据库级别授予,但VIEW SERVER STATE似乎根本不受支持.
那么,我应该如何使用SQL Server插件为Telegraf配置SQL数据库登录以使其正常工作?
编辑:
编辑2:
我们有一个 Java 17 Quarkus 应用程序编译为本机可执行文件 (ubi-quarkus-native-image:22.2-java17),在 Kubernetes 中运行。它使用 SSL 连接到旧的集成服务器,发出 HTTP 请求。我们的应用程序使用套接字工厂创建 SSLSocket 并连接它;请求成功。完成后,我们调用 SSLSocket#close。这也有效,但在另一边他们记录了这个:
12:51:16 : ssl_debug(58): Shutting down SSL layer...
12:51:16 : ssl_debug(58): Sending alert: Alert Warning: close notify
12:51:16 : ssl_debug(58): Read 15328 bytes in 3 records, 15214 bytes net, 5071 average.
12:51:16 : ssl_debug(58): Wrote 175 bytes in 1 records, 152 bytes net, 152 average.
12:51:16 : ssl_debug(58): Closing transport...
12:51:16 : ssl_debug(58): Waiting on peer close notify...
12:51:16 : ssl_debug(58): Received alert message: Alert Warning: …Run Code Online (Sandbox Code Playgroud)