『贴代码』
PasteSpider
PasteForm
精选作品
优选问答
成长笔记
【本期话题】更多
                                    我们在开发中经常遇到对方的接口请求有频率限制,比如当前接口每秒的请求不能大于100,不能大于1000,对于这样的,我们作为请求方,如何做限定?
                    
Serilog在appsettings.json中的配置
尘埃 2023-06-13 4740 244 0 编辑
使用appsettings.json配置内容配置serilog!
  "Serilog": {
    "LevelSwitches": {
      "$errorSwitch": "Error",
      "$infoSwitch": "Information",
      "$warnSwitch": "Warning"
    },
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        "Microsoft": "Information",
        "System": "Information"
      }
    },
    "WriteTo": [
      {
        "Name": "Console",
        "Args": {
          "levelSwitch": "$warnSwitch"
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/log.txt",
          "levelSwitch": "$infoSwitch", //也可以使用 restrictedToMinimumLevel:Information
          "rollingInterval": "Day", // "创建文件的类别,可以是分钟,小时,天,月,年": null, 
          "retainedFileCountLimit": 60, // "--设置日志文件个数最大值,默认31,意思就是只保留最近的31个日志文件", "等于null时永远保留文件": null,
          "fileSizeLimitBytes": 3145728, //设置单个文件大小为3M 默认1G
          "rollOnFileSizeLimit": true //超过文件大小后创建新的
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/warning.txt",
          "levelSwitch": "$warnSwitch",
          "rollingInterval": "Day", // "创建文件的类别,可以是分钟,小时,天,月,年": null,
          "retainedFileCountLimit": 60, // "--设置日志文件个数最大值,默认31,意思就是只保留最近的31个日志文件", "等于null时永远保留文件": null,
          "fileSizeLimitBytes": 3145728, //设置单个文件大小为3M 默认1G
          "rollOnFileSizeLimit": true //超过文件大小后创建新的
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/error.txt",
          "levelSwitch": "$errorSwitch",
          "rollingInterval": "Day", // "创建文件的类别,可以是分钟,小时,天,月,年": null,
          "retainedFileCountLimit": 60, // "--设置日志文件个数最大值,默认31,意思就是只保留最近的31个日志文件", "等于null时永远保留文件": null,
          "fileSizeLimitBytes": 3145728, //设置单个文件大小为3M 默认1G
          "rollOnFileSizeLimit": true //超过文件大小后创建新的
        }
      },
      {
        "Name": "Console",
        "Args": {
          "levelSwitch": "$errorSwitch"
        }
      }
    ],
    "Enrich": [ "FromLogContext", "WithMachineName", "WithThreadId" ]
  }

还有另外一种是最低层级限定的,如下:

  "Serilog": {
    "MinimumLevel": {
      "Default": "Information",
      "Override": {
        "Microsoft": "Information",
        "System": "Information"
      }
    },
    "WriteTo": [
      {
        "Name": "Console",
        "Args": {
          "restrictedToMinimumLevel": "Warning"
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/log.txt",
          "restrictedToMinimumLevel": "Information",
          "rollingInterval": "Day", // "创建文件的类别,可以是分钟,小时,天,月,年": null,
          "retainedFileCountLimit": 60, // "--设置日志文件个数最大值,默认31,意思就是只保留最近的31个日志文件", "等于null时永远保留文件": null,
          "fileSizeLimitBytes": 3145728, //设置单个文件大小为3M 默认1G
          "rollOnFileSizeLimit": true //超过文件大小后创建新的
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/warning.txt",
          "restrictedToMinimumLevel": "Warning",
          "rollingInterval": "Day", // "创建文件的类别,可以是分钟,小时,天,月,年": null,
          "retainedFileCountLimit": 60, // "--设置日志文件个数最大值,默认31,意思就是只保留最近的31个日志文件", "等于null时永远保留文件": null,
          "fileSizeLimitBytes": 3145728, //设置单个文件大小为3M 默认1G
          "rollOnFileSizeLimit": true //超过文件大小后创建新的
        }
      },
      {
        "Name": "File",
        "Args": {
          "path": "logs/error.txt",
          "restrictedToMinimumLevel": "Error",
          "rollingInterval": "Day", // "创建文件的类别,可以是分钟,小时,天,月,年": null,
          "retainedFileCountLimit": 60, // "--设置日志文件个数最大值,默认31,意思就是只保留最近的31个日志文件", "等于null时永远保留文件": null,
          "fileSizeLimitBytes": 3145728, //设置单个文件大小为3M 默认1G
          "rollOnFileSizeLimit": true //超过文件大小后创建新的
        }
      },
      {
        "Name": "Console",
        "Args": {
          "restrictedToMinimumLevel": "Error"
        }
      }
    ],
    "Enrich": [ "FromLogContext", "WithMachineName", "WithThreadId" ]
  }

使用MinimumLevel可能会造成重复啰嗦的问题,使用levelswitch注意要先申明!

评论列表
尘埃
244 4740 0
快捷注册
用户问答更多
PasteForm,神奇了啊!都说低代码,低代码,那个是对于非开发者来说的,感觉PasteForm就是开发者的低代码啊!只要配置好Model,就有对应的CRUD操作,还带一些逻辑,和生成代码是两码事了!!!问题来了,有什么局限性,或者适用哪些场景?
07月份版本的内存占用比以前大了,也没有泄漏,啥情况?以前200MB,这个版本能到300MB
  • 应该和之前的PasteForm引入有关,之前的版本引入了大量的API,看看10月份或者11月份的版本,新版本的PasteForm极大的优化了API接口量,可以说直接从4N优化到了N个(N代表数据表数量)

文档中的组织归属有些问题,啥时候看看,更新更新!
  • 已经升级了,主要是left join的查询的时候没有过滤,其实这个问题,多租户也是一样的!

最新动态
  • 120.****.79 正在查看 Document:spider !
  • 140.****.141 正在查看 正在查看笔记页面 !
  • 66.****.138 正在查看 Document:spider !
  • 216.****.112 正在查看 文章列表页 !
  • 216.****.112 正在查看 DeepSeek评价PasteForm框架是最佳实践框架,一个让管理端开发爽到飞起的全栈解决方案 !
  • 216.****.112 正在查看 PasteSpider的配置appsettings.json说明,安装前必读 !
  • 181.****.2 正在查看 Serilog在appsettings.json中的配置 !
  • 40.****.13 正在查看 文章列表页 !
  • 82.****.195 正在查看 Document:spider !
  • 101.****.197 正在查看 PasteSpider的运行条件之SVNManage中Hook的配置 !
  • 59.****.130 正在查看 主页pastespider !
欢迎加入QQ讨论群 296245685 [PasteSpider]介绍 [PasteForm]介绍 @2022-2023 PasteCode.cn 版权所有 ICP证 闽ICP备2021013869号-2