RecAppGWInfo.cs 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. using System.Collections.Generic;
  2. namespace TEAMModelOS.SDK.Models.Cosmos.BI
  3. {
  4. /// <summary>
  5. /// 防火墙网关信息
  6. /// </summary>
  7. public record RecAppGWInfo
  8. {
  9. public string hour { get; set; }
  10. public string ip { get; set; }
  11. public string api { get; set; }
  12. public string hostName { get; set; }
  13. public string minute { get; set; }
  14. }
  15. /// <summary>
  16. /// 防火墙统计后的信息
  17. /// </summary>
  18. public record RecCnt
  19. {
  20. public List<RecApiCnt> apiCnt { get; set; }
  21. public List<RecIpCnt> ipCnt { get; set; }
  22. public List<MinuteCnt> minCnts { get; set; }
  23. public List<RecRegionCnt> regionCnts { get; set; }
  24. }
  25. /// <summary>
  26. /// 防火墙统计通用信息
  27. /// </summary>
  28. public record RecCntBas
  29. {
  30. public int count { get; set; }
  31. public string hour { get; set; }
  32. public List<string> hostName { get; set; }
  33. }
  34. /// <summary>
  35. /// 防火墙按照IP统计
  36. /// </summary>
  37. public record RecIpCnt : RecCntBas
  38. {
  39. public string ip { get; set; }
  40. public List<string> api { get; set; }
  41. }
  42. /// <summary>
  43. /// 防火墙按照接口统计
  44. /// </summary>
  45. public record RecApiCnt : RecCntBas
  46. {
  47. public string api { get; set; }
  48. public List<string> ip { get; set; }
  49. }
  50. /// <summary>
  51. /// 防火墙按照地区统计
  52. /// </summary>
  53. public record RecRegionCnt : RecCntBas
  54. {
  55. public string region { get; set; }
  56. }
  57. /// <summary>
  58. /// 分钟数统计接口数量
  59. /// </summary>
  60. public record MinuteCnt
  61. {
  62. public string minute { get; set; }
  63. public int cnt { get; set; }
  64. }
  65. /// <summary>
  66. /// 读取日志数据结构
  67. /// </summary>
  68. public record AGInfo
  69. {
  70. //public string resourceId { get; set; }
  71. public string operationName { get; set; }
  72. public string time { get; set; }
  73. public string category { get; set; }
  74. public PropertiesWeb properties { get; set; }
  75. public string resourceId { get; set; }
  76. }
  77. /// <summary>
  78. /// 读取日志数据结构
  79. /// </summary>
  80. public record Properties
  81. {
  82. //public string instanceId { get; set; }
  83. public string clientIp { get; set; }
  84. public string clientPort { get; set; }
  85. public string requestUri { get; set; }
  86. public string ruleSetType { get; set; }
  87. public string ruleSetVersion { get; set; }
  88. public string ruleId { get; set; }
  89. public string ruleGroup { get; set; }
  90. //public string message { get; set; }
  91. public string action { get; set; }
  92. public string site { get; set; }
  93. //public Datails datails { get; set; }
  94. public string hostname { get; set; }
  95. public string transactionId { get; set; }
  96. }
  97. public record PropertiesWeb
  98. {
  99. /// <summary>
  100. ///
  101. /// </summary>
  102. public string CsMethod { get; set; }
  103. /// <summary>
  104. ///
  105. /// </summary>
  106. public string CsUriStem { get; set; }
  107. /// <summary>
  108. ///
  109. /// </summary>
  110. public string SPort { get; set; }
  111. /// <summary>
  112. ///
  113. /// </summary>
  114. public string CIp { get; set; }
  115. /// <summary>
  116. ///
  117. /// </summary>
  118. public string UserAgent { get; set; }
  119. /// <summary>
  120. ///
  121. /// </summary>
  122. public string CsHost { get; set; }
  123. /// <summary>
  124. ///
  125. /// </summary>
  126. public int ScStatus { get; set; }
  127. /// <summary>
  128. ///
  129. /// </summary>
  130. public int ScBytes { get; set; }
  131. /// <summary>
  132. ///
  133. /// </summary>
  134. public int CsBytes { get; set; }
  135. /// <summary>
  136. ///
  137. /// </summary>
  138. public int TimeTaken { get; set; }
  139. /// <summary>
  140. ///
  141. /// </summary>
  142. public string Result { get; set; }
  143. /// <summary>
  144. ///
  145. /// </summary>
  146. public string Cookie { get; set; }
  147. /// <summary>
  148. ///
  149. /// </summary>
  150. public string CsUriQuery { get; set; }
  151. /// <summary>
  152. ///
  153. /// </summary>
  154. /// <summary>
  155. ///
  156. /// </summary>
  157. public string Referer { get; set; }
  158. /// <summary>
  159. ///
  160. /// </summary>
  161. }
  162. }