跳到主要内容

软件配置

提示

默认直接启动即可,无需配置即可正常使用

配置文件为 appsettings.json

提示

dotnet应用可以在 启动指令中 添加urls参数,指定启动端口,也可配置 appsettings.json 文件

  "urls": "http://*:5000"

一、数据库

ThingsGateway 默认使用 Sqlite 数据库,方便部署,也可以通过配置 appsettings.json 文件,修改数据库配置

找到 SqlSugarOptions节点,默认配置为


//Sqlsugar数据库配置
"SqlSugarOptions": [
{
"ConfigId": "DB_Admin", //ID
//"ConnectionString": "server=localhost;Database=test;Uid=root;Pwd=111111;AllowLoadLocalInfile=true;", //连接字符串
//"DbType": "MySql", //数据库类型
"ConnectionString": "Data Source=Admin.db;", //连接字符串
"DbType": "Sqlite", //数据库类型
"LanguageType": "Chinese", //中文提示
"IsAutoCloseConnection": true, //是否自动释放
"InitTable": true, //是否初始化数据库,适用于codefirst
"InitSeedData": true, //是否初始化种子数据
"IsUpdateSeedData": false, //是否更新种子数据
"IsShowSql": false //是否控制台显示Sql语句
},
{
"ConfigId": "DB_Log", //ID
//"ConnectionString": "server=localhost;Database=test;Uid=root;Pwd=111111;AllowLoadLocalInfile=true;", //连接字符串
//"DbType": "MySql", //数据库类型
"ConnectionString": "Data Source=Log.db", //连接字符串
"DbType": "Sqlite", //数据库类型
"LanguageType": "Chinese", //中文提示
"IsAutoCloseConnection": true, //是否自动释放
"InitTable": true, //是否初始化数据库,适用于codefirst
"InitSeedData": true, //是否初始化种子数据
"IsUpdateSeedData": false, //是否更新种子数据
"IsShowSql": false //是否控制台显示Sql语句
},
{
"ConfigId": "DB_TokenCache", //ID
//"ConnectionString": "server=localhost;Database=test;Uid=root;Pwd=111111;AllowLoadLocalInfile=true;", //连接字符串
//"DbType": "MySql", //数据库类型
"ConnectionString": "Data Source=TokenCache.db", //连接字符串
"DbType": "Sqlite", //数据库类型
"LanguageType": "Chinese", //中文提示
"IsAutoCloseConnection": true, //是否自动释放
"InitTable": true, //是否初始化数据库,适用于codefirst
"InitSeedData": true, //是否初始化种子数据
"IsUpdateSeedData": false, //是否更新种子数据
"IsShowSql": false //是否控制台显示Sql语句
},
{
"ConfigId": "DB_HardwareInfo", //ID
//"ConnectionString": "server=localhost;Database=test;Uid=root;Pwd=111111;AllowLoadLocalInfile=true;", //连接字符串
//"DbType": "MySql", //数据库类型
"ConnectionString": "Data Source=HardwareInfo.db", //连接字符串
"DbType": "Sqlite", //数据库类型
"LanguageType": "Chinese", //中文提示
"IsAutoCloseConnection": true, //是否自动释放
"InitTable": true, //是否初始化数据库,适用于codefirst
"InitSeedData": true, //是否初始化种子数据
"IsUpdateSeedData": false, //是否更新种子数据
"IsShowSql": false //是否控制台显示Sql语句
},
{
"ConfigId": "DB_Custom", //ID
//"ConnectionString": "server=localhost;Database=test;Uid=root;Pwd=111111;AllowLoadLocalInfile=true;", //连接字符串
//"DbType": "MySql", //数据库类型
"ConnectionString": "Data Source=ThingsGateway.db", //连接字符串
"DbType": "Sqlite", //数据库类型
"LanguageType": "Chinese", //中文提示
"IsAutoCloseConnection": true, //是否自动释放
"InitTable": true, //是否初始化数据库,适用于codefirst
"InitSeedData": true, //是否初始化种子数据
"IsUpdateSeedData": false, //是否更新种子数据
"IsShowSql": false //是否控制台显示Sql语句
}

],

查看配置注释,更换 数据库连接字符串 以及 数据库类型

二、日志配置

找到 Logging节点,默认配置为



"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
},
"EventLog": {
"LogLevel": {
"Default": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
} //windows事件输出日志等级
},
"Console": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
} //控制台输出日志等级
},
"BackendLog": {
"LogLevel": {
"Default": "Warning"
}
}
},



可以看到 EventLog Console 以及 BackendLog 日志源的配置日志等级

三、冗余配置

ThingsGateway支持双机热备冗余

找到 ManagementOptions节点,默认配置为


//冗余配置
"ManagementOptions": {
"PrimaryUri": "127.0.0.1:7101", //主(备)站IP
"VerifyToken": "ThingsGateway", //登录token,双方一致
"HeartbeatInterval": 3000, //心跳间隔
"MaxErrorCount": 3, //最大错误次数
"Redundancy": {
"Enable": true, //启用冗余
"IsPrimary": true, //是否主站
"IsStartBusinessDevice": true, //是否启用备用站点的业务设备
"SyncInterval": 5000 //数据同步间隔
//主从站的采集配置必须一致
//默认主站优先,当主站恢复后,从站切换回备用模式。
//主从站都完成对采集的初始化,但从站的数据都来自主站的数据同步
}
},


四、网关限制配置

找到 ChannelThread节点,默认配置为

  "ChannelThread": {
"MinCycleInterval": 10, //最小循环间隔
"MaxCycleInterval": 200, //最大循环间隔
"MaxVariableCount": 4000000, //最大变量数量
"MaxCount": 4000 //最大通道数量(每个通道为一个循环任务)
},