# frozen_string_literal: true
# Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
module TencentCloud
module Cls
module V20201016
# AddMachineGroupInfo请求参数结构体
class AddMachineGroupInfoRequest < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
# @param MachineGroupType: 机器组类型
# 目前type支持 ip 和 label
# @type MachineGroupType: :class:`Tencentcloud::Cls.v20201016.models.MachineGroupTypeInfo`
attr_accessor :GroupId, :MachineGroupType
def initialize(groupid=nil, machinegrouptype=nil)
@GroupId = groupid
@MachineGroupType = machinegrouptype
end
def deserialize(params)
@GroupId = params['GroupId']
unless params['MachineGroupType'].nil?
@MachineGroupType = MachineGroupTypeInfo.new
@MachineGroupType.deserialize(params['MachineGroupType'])
end
end
end
# AddMachineGroupInfo返回参数结构体
class AddMachineGroupInfoResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 告警多维分析一些配置信息
class AlarmAnalysisConfig < TencentCloud::Common::AbstractModel
# @param Key: 键
# @type Key: String
# @param Value: 值
# @type Value: String
attr_accessor :Key, :Value
def initialize(key=nil, value=nil)
@Key = key
@Value = value
end
def deserialize(params)
@Key = params['Key']
@Value = params['Value']
end
end
# 告警策略描述
class AlarmInfo < TencentCloud::Common::AbstractModel
# @param Name: 告警策略名称。
# @type Name: String
# @param AlarmTargets: 监控对象列表。
# @type AlarmTargets: Array
# @param MonitorTime: 监控任务运行时间点。
# @type MonitorTime: :class:`Tencentcloud::Cls.v20201016.models.MonitorTime`
# @param Condition: 触发条件。
# @type Condition: String
# @param TriggerCount: 持续周期。持续满足触发条件TriggerCount个周期后,再进行告警;最小值为1,最大值为10。
# @type TriggerCount: Integer
# @param AlarmPeriod: 告警重复的周期。单位是min。取值范围是0~1440。
# @type AlarmPeriod: Integer
# @param AlarmNoticeIds: 关联的告警通知模板列表。
# @type AlarmNoticeIds: Array
# @param Status: 开启状态。
# @type Status: Boolean
# @param AlarmId: 告警策略ID。
# @type AlarmId: String
# @param CreateTime: 创建时间。
# @type CreateTime: String
# @param UpdateTime: 最近更新时间。
# @type UpdateTime: String
# @param MessageTemplate: 自定义通知模板
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MessageTemplate: String
# @param CallBack: 自定义回调模板
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CallBack: :class:`Tencentcloud::Cls.v20201016.models.CallBackInfo`
# @param Analysis: 多维分析设置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Analysis: Array
attr_accessor :Name, :AlarmTargets, :MonitorTime, :Condition, :TriggerCount, :AlarmPeriod, :AlarmNoticeIds, :Status, :AlarmId, :CreateTime, :UpdateTime, :MessageTemplate, :CallBack, :Analysis
def initialize(name=nil, alarmtargets=nil, monitortime=nil, condition=nil, triggercount=nil, alarmperiod=nil, alarmnoticeids=nil, status=nil, alarmid=nil, createtime=nil, updatetime=nil, messagetemplate=nil, callback=nil, analysis=nil)
@Name = name
@AlarmTargets = alarmtargets
@MonitorTime = monitortime
@Condition = condition
@TriggerCount = triggercount
@AlarmPeriod = alarmperiod
@AlarmNoticeIds = alarmnoticeids
@Status = status
@AlarmId = alarmid
@CreateTime = createtime
@UpdateTime = updatetime
@MessageTemplate = messagetemplate
@CallBack = callback
@Analysis = analysis
end
def deserialize(params)
@Name = params['Name']
unless params['AlarmTargets'].nil?
@AlarmTargets = []
params['AlarmTargets'].each do |i|
alarmtargetinfo_tmp = AlarmTargetInfo.new
alarmtargetinfo_tmp.deserialize(i)
@AlarmTargets << alarmtargetinfo_tmp
end
end
unless params['MonitorTime'].nil?
@MonitorTime = MonitorTime.new
@MonitorTime.deserialize(params['MonitorTime'])
end
@Condition = params['Condition']
@TriggerCount = params['TriggerCount']
@AlarmPeriod = params['AlarmPeriod']
@AlarmNoticeIds = params['AlarmNoticeIds']
@Status = params['Status']
@AlarmId = params['AlarmId']
@CreateTime = params['CreateTime']
@UpdateTime = params['UpdateTime']
@MessageTemplate = params['MessageTemplate']
unless params['CallBack'].nil?
@CallBack = CallBackInfo.new
@CallBack.deserialize(params['CallBack'])
end
unless params['Analysis'].nil?
@Analysis = []
params['Analysis'].each do |i|
analysisdimensional_tmp = AnalysisDimensional.new
analysisdimensional_tmp.deserialize(i)
@Analysis << analysisdimensional_tmp
end
end
end
end
# 告警通知模板类型
class AlarmNotice < TencentCloud::Common::AbstractModel
# @param Name: 告警通知模板名称。
# @type Name: String
# @param Type: 告警模板的类型。可选值:
#
Trigger - 告警触发
#
Recovery - 告警恢复
#
All - 告警触发和告警恢复
# @type Type: String
# @param NoticeReceivers: 告警通知模板接收者信息。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type NoticeReceivers: Array
# @param WebCallbacks: 告警通知模板回调信息。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type WebCallbacks: Array
# @param AlarmNoticeId: 告警通知模板ID。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AlarmNoticeId: String
# @param CreateTime: 创建时间。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CreateTime: String
# @param UpdateTime: 最近更新时间。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UpdateTime: String
attr_accessor :Name, :Type, :NoticeReceivers, :WebCallbacks, :AlarmNoticeId, :CreateTime, :UpdateTime
def initialize(name=nil, type=nil, noticereceivers=nil, webcallbacks=nil, alarmnoticeid=nil, createtime=nil, updatetime=nil)
@Name = name
@Type = type
@NoticeReceivers = noticereceivers
@WebCallbacks = webcallbacks
@AlarmNoticeId = alarmnoticeid
@CreateTime = createtime
@UpdateTime = updatetime
end
def deserialize(params)
@Name = params['Name']
@Type = params['Type']
unless params['NoticeReceivers'].nil?
@NoticeReceivers = []
params['NoticeReceivers'].each do |i|
noticereceiver_tmp = NoticeReceiver.new
noticereceiver_tmp.deserialize(i)
@NoticeReceivers << noticereceiver_tmp
end
end
unless params['WebCallbacks'].nil?
@WebCallbacks = []
params['WebCallbacks'].each do |i|
webcallback_tmp = WebCallback.new
webcallback_tmp.deserialize(i)
@WebCallbacks << webcallback_tmp
end
end
@AlarmNoticeId = params['AlarmNoticeId']
@CreateTime = params['CreateTime']
@UpdateTime = params['UpdateTime']
end
end
# 告警对象
class AlarmTarget < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID。
# @type TopicId: String
# @param Query: 查询语句。
# @type Query: String
# @param Number: 告警对象序号;从1开始递增。
# @type Number: Integer
# @param StartTimeOffset: 查询范围起始时间相对于告警执行时间的偏移,单位为分钟,取值为非正,最大值为0,最小值为-1440。
# @type StartTimeOffset: Integer
# @param EndTimeOffset: 查询范围终止时间相对于告警执行时间的偏移,单位为分钟,取值为非正,须大于StartTimeOffset,最大值为0,最小值为-1440。
# @type EndTimeOffset: Integer
# @param LogsetId: 日志集ID。
# @type LogsetId: String
attr_accessor :TopicId, :Query, :Number, :StartTimeOffset, :EndTimeOffset, :LogsetId
def initialize(topicid=nil, query=nil, number=nil, starttimeoffset=nil, endtimeoffset=nil, logsetid=nil)
@TopicId = topicid
@Query = query
@Number = number
@StartTimeOffset = starttimeoffset
@EndTimeOffset = endtimeoffset
@LogsetId = logsetid
end
def deserialize(params)
@TopicId = params['TopicId']
@Query = params['Query']
@Number = params['Number']
@StartTimeOffset = params['StartTimeOffset']
@EndTimeOffset = params['EndTimeOffset']
@LogsetId = params['LogsetId']
end
end
# 告警对象
class AlarmTargetInfo < TencentCloud::Common::AbstractModel
# @param LogsetId: 日志集ID。
# @type LogsetId: String
# @param LogsetName: 日志集名称。
# @type LogsetName: String
# @param TopicId: 日志主题ID。
# @type TopicId: String
# @param TopicName: 日志主题名称。
# @type TopicName: String
# @param Query: 查询语句。
# @type Query: String
# @param Number: 告警对象序号。
# @type Number: Integer
# @param StartTimeOffset: 查询范围起始时间相对于告警执行时间的偏移,单位为分钟,取值为非正,最大值为0,最小值为-1440。
# @type StartTimeOffset: Integer
# @param EndTimeOffset: 查询范围终止时间相对于告警执行时间的偏移,单位为分钟,取值为非正,须大于StartTimeOffset,最大值为0,最小值为-1440。
# @type EndTimeOffset: Integer
attr_accessor :LogsetId, :LogsetName, :TopicId, :TopicName, :Query, :Number, :StartTimeOffset, :EndTimeOffset
def initialize(logsetid=nil, logsetname=nil, topicid=nil, topicname=nil, query=nil, number=nil, starttimeoffset=nil, endtimeoffset=nil)
@LogsetId = logsetid
@LogsetName = logsetname
@TopicId = topicid
@TopicName = topicname
@Query = query
@Number = number
@StartTimeOffset = starttimeoffset
@EndTimeOffset = endtimeoffset
end
def deserialize(params)
@LogsetId = params['LogsetId']
@LogsetName = params['LogsetName']
@TopicId = params['TopicId']
@TopicName = params['TopicName']
@Query = params['Query']
@Number = params['Number']
@StartTimeOffset = params['StartTimeOffset']
@EndTimeOffset = params['EndTimeOffset']
end
end
# 多维分析的分析维度
class AnalysisDimensional < TencentCloud::Common::AbstractModel
# @param Name: 分析名称
# @type Name: String
# @param Type: 分析类型:query,field ,original
# @type Type: String
# @param Content: 分析内容
# @type Content: String
# @param ConfigInfo: 配置
# @type ConfigInfo: Array
attr_accessor :Name, :Type, :Content, :ConfigInfo
def initialize(name=nil, type=nil, content=nil, configinfo=nil)
@Name = name
@Type = type
@Content = content
@ConfigInfo = configinfo
end
def deserialize(params)
@Name = params['Name']
@Type = params['Type']
@Content = params['Content']
unless params['ConfigInfo'].nil?
@ConfigInfo = []
params['ConfigInfo'].each do |i|
alarmanalysisconfig_tmp = AlarmAnalysisConfig.new
alarmanalysisconfig_tmp.deserialize(i)
@ConfigInfo << alarmanalysisconfig_tmp
end
end
end
end
# ApplyConfigToMachineGroup请求参数结构体
class ApplyConfigToMachineGroupRequest < TencentCloud::Common::AbstractModel
# @param ConfigId: 采集配置ID
# @type ConfigId: String
# @param GroupId: 机器组ID
# @type GroupId: String
attr_accessor :ConfigId, :GroupId
def initialize(configid=nil, groupid=nil)
@ConfigId = configid
@GroupId = groupid
end
def deserialize(params)
@ConfigId = params['ConfigId']
@GroupId = params['GroupId']
end
end
# ApplyConfigToMachineGroup返回参数结构体
class ApplyConfigToMachineGroupResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 回调配置
class CallBackInfo < TencentCloud::Common::AbstractModel
# @param Body: 回调时的Body
# @type Body: String
# @param Headers: 回调时的Headers
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Headers: Array
attr_accessor :Body, :Headers
def initialize(body=nil, headers=nil)
@Body = body
@Headers = headers
end
def deserialize(params)
@Body = params['Body']
@Headers = params['Headers']
end
end
# CKafka的描述-需要投递到的kafka信息
class Ckafka < TencentCloud::Common::AbstractModel
# @param Vip: Ckafka 的 Vip
# @type Vip: String
# @param Vport: Ckafka 的 Vport
# @type Vport: String
# @param InstanceId: Ckafka 的 InstanceId
# @type InstanceId: String
# @param InstanceName: Ckafka 的 InstanceName
# @type InstanceName: String
# @param TopicId: Ckafka 的 TopicId
# @type TopicId: String
# @param TopicName: Ckafka 的 TopicName
# @type TopicName: String
attr_accessor :Vip, :Vport, :InstanceId, :InstanceName, :TopicId, :TopicName
def initialize(vip=nil, vport=nil, instanceid=nil, instancename=nil, topicid=nil, topicname=nil)
@Vip = vip
@Vport = vport
@InstanceId = instanceid
@InstanceName = instancename
@TopicId = topicid
@TopicName = topicname
end
def deserialize(params)
@Vip = params['Vip']
@Vport = params['Vport']
@InstanceId = params['InstanceId']
@InstanceName = params['InstanceName']
@TopicId = params['TopicId']
@TopicName = params['TopicName']
end
end
# CloseKafkaConsumer请求参数结构体
class CloseKafkaConsumerRequest < TencentCloud::Common::AbstractModel
# @param FromTopicId: CLS对应的topic标识
# @type FromTopicId: String
attr_accessor :FromTopicId
def initialize(fromtopicid=nil)
@FromTopicId = fromtopicid
end
def deserialize(params)
@FromTopicId = params['FromTopicId']
end
end
# CloseKafkaConsumer返回参数结构体
class CloseKafkaConsumerResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 日志分析的列属性
class Column < TencentCloud::Common::AbstractModel
# @param Name: 列的名字
# @type Name: String
# @param Type: 列的属性
# @type Type: String
attr_accessor :Name, :Type
def initialize(name=nil, type=nil)
@Name = name
@Type = type
end
def deserialize(params)
@Name = params['Name']
@Type = params['Type']
end
end
# 投递日志的压缩配置
class CompressInfo < TencentCloud::Common::AbstractModel
# @param Format: 压缩格式,支持gzip、lzop、snappy和none不压缩
# @type Format: String
attr_accessor :Format
def initialize(format=nil)
@Format = format
end
def deserialize(params)
@Format = params['Format']
end
end
# 特殊采集规则配置信息
class ConfigExtraInfo < TencentCloud::Common::AbstractModel
# @param ConfigExtraId: 采集规则扩展配置ID
# @type ConfigExtraId: String
# @param Name: 采集规则名称
# @type Name: String
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param Type: 类型:container_stdout、container_file、host_file
# @type Type: String
# @param HostFile: 节点文件配置信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HostFile: :class:`Tencentcloud::Cls.v20201016.models.HostFileInfo`
# @param ContainerFile: 容器文件路径信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ContainerFile: :class:`Tencentcloud::Cls.v20201016.models.ContainerFileInfo`
# @param ContainerStdout: 容器标准输出信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ContainerStdout: :class:`Tencentcloud::Cls.v20201016.models.ContainerStdoutInfo`
# @param LogFormat: 日志格式化方式
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogFormat: String
# @param LogType: 采集的日志类型,json_log代表json格式日志,delimiter_log代表分隔符格式日志,minimalist_log代表极简日志,multiline_log代表多行日志,fullregex_log代表完整正则,默认为minimalist_log
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogType: String
# @param ExtractRule: 提取规则,如果设置了ExtractRule,则必须设置LogType
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExtractRule: :class:`Tencentcloud::Cls.v20201016.models.ExtractRuleInfo`
# @param ExcludePaths: 采集黑名单路径列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExcludePaths: Array
# @param UpdateTime: 更新时间
# @type UpdateTime: String
# @param CreateTime: 创建时间
# @type CreateTime: String
# @param UserDefineRule: 用户自定义解析字符串
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UserDefineRule: String
# @param GroupId: 机器组ID
# @type GroupId: String
# @param ConfigFlag: 自建采集配置标
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ConfigFlag: String
# @param LogsetId: 日志集ID
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogsetId: String
# @param LogsetName: 日志集name
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogsetName: String
# @param TopicName: 日志主题name
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TopicName: String
attr_accessor :ConfigExtraId, :Name, :TopicId, :Type, :HostFile, :ContainerFile, :ContainerStdout, :LogFormat, :LogType, :ExtractRule, :ExcludePaths, :UpdateTime, :CreateTime, :UserDefineRule, :GroupId, :ConfigFlag, :LogsetId, :LogsetName, :TopicName
def initialize(configextraid=nil, name=nil, topicid=nil, type=nil, hostfile=nil, containerfile=nil, containerstdout=nil, logformat=nil, logtype=nil, extractrule=nil, excludepaths=nil, updatetime=nil, createtime=nil, userdefinerule=nil, groupid=nil, configflag=nil, logsetid=nil, logsetname=nil, topicname=nil)
@ConfigExtraId = configextraid
@Name = name
@TopicId = topicid
@Type = type
@HostFile = hostfile
@ContainerFile = containerfile
@ContainerStdout = containerstdout
@LogFormat = logformat
@LogType = logtype
@ExtractRule = extractrule
@ExcludePaths = excludepaths
@UpdateTime = updatetime
@CreateTime = createtime
@UserDefineRule = userdefinerule
@GroupId = groupid
@ConfigFlag = configflag
@LogsetId = logsetid
@LogsetName = logsetname
@TopicName = topicname
end
def deserialize(params)
@ConfigExtraId = params['ConfigExtraId']
@Name = params['Name']
@TopicId = params['TopicId']
@Type = params['Type']
unless params['HostFile'].nil?
@HostFile = HostFileInfo.new
@HostFile.deserialize(params['HostFile'])
end
unless params['ContainerFile'].nil?
@ContainerFile = ContainerFileInfo.new
@ContainerFile.deserialize(params['ContainerFile'])
end
unless params['ContainerStdout'].nil?
@ContainerStdout = ContainerStdoutInfo.new
@ContainerStdout.deserialize(params['ContainerStdout'])
end
@LogFormat = params['LogFormat']
@LogType = params['LogType']
unless params['ExtractRule'].nil?
@ExtractRule = ExtractRuleInfo.new
@ExtractRule.deserialize(params['ExtractRule'])
end
unless params['ExcludePaths'].nil?
@ExcludePaths = []
params['ExcludePaths'].each do |i|
excludepathinfo_tmp = ExcludePathInfo.new
excludepathinfo_tmp.deserialize(i)
@ExcludePaths << excludepathinfo_tmp
end
end
@UpdateTime = params['UpdateTime']
@CreateTime = params['CreateTime']
@UserDefineRule = params['UserDefineRule']
@GroupId = params['GroupId']
@ConfigFlag = params['ConfigFlag']
@LogsetId = params['LogsetId']
@LogsetName = params['LogsetName']
@TopicName = params['TopicName']
end
end
# 采集规则配置信息
class ConfigInfo < TencentCloud::Common::AbstractModel
# @param ConfigId: 采集规则配置ID
# @type ConfigId: String
# @param Name: 采集规则配置名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Name: String
# @param LogFormat: 日志格式化方式
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogFormat: String
# @param Path: 日志采集路径
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Path: String
# @param LogType: 采集的日志类型,json_log代表json格式日志,delimiter_log代表分隔符格式日志,minimalist_log代表极简日志,multiline_log代表多行日志,fullregex_log代表完整正则,默认为minimalist_log
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogType: String
# @param ExtractRule: 提取规则,如果设置了ExtractRule,则必须设置LogType
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExtractRule: :class:`Tencentcloud::Cls.v20201016.models.ExtractRuleInfo`
# @param ExcludePaths: 采集黑名单路径列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExcludePaths: Array
# @param Output: 采集配置所属日志主题ID即TopicId
# @type Output: String
# @param UpdateTime: 更新时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UpdateTime: String
# @param CreateTime: 创建时间
# @type CreateTime: String
# @param UserDefineRule: 用户自定义解析字符串
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UserDefineRule: String
attr_accessor :ConfigId, :Name, :LogFormat, :Path, :LogType, :ExtractRule, :ExcludePaths, :Output, :UpdateTime, :CreateTime, :UserDefineRule
def initialize(configid=nil, name=nil, logformat=nil, path=nil, logtype=nil, extractrule=nil, excludepaths=nil, output=nil, updatetime=nil, createtime=nil, userdefinerule=nil)
@ConfigId = configid
@Name = name
@LogFormat = logformat
@Path = path
@LogType = logtype
@ExtractRule = extractrule
@ExcludePaths = excludepaths
@Output = output
@UpdateTime = updatetime
@CreateTime = createtime
@UserDefineRule = userdefinerule
end
def deserialize(params)
@ConfigId = params['ConfigId']
@Name = params['Name']
@LogFormat = params['LogFormat']
@Path = params['Path']
@LogType = params['LogType']
unless params['ExtractRule'].nil?
@ExtractRule = ExtractRuleInfo.new
@ExtractRule.deserialize(params['ExtractRule'])
end
unless params['ExcludePaths'].nil?
@ExcludePaths = []
params['ExcludePaths'].each do |i|
excludepathinfo_tmp = ExcludePathInfo.new
excludepathinfo_tmp.deserialize(i)
@ExcludePaths << excludepathinfo_tmp
end
end
@Output = params['Output']
@UpdateTime = params['UpdateTime']
@CreateTime = params['CreateTime']
@UserDefineRule = params['UserDefineRule']
end
end
# 投递任务出入参 Content
class ConsumerContent < TencentCloud::Common::AbstractModel
# @param EnableTag: 是否投递 TAG 信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type EnableTag: Boolean
# @param MetaFields: 需要投递的元数据列表,目前仅支持:\_\_SOURCE\_\_,\_\_FILENAME\_\_,\_\_TIMESTAMP\_\_,\_\_HOSTNAME\_\_和\_\_PKGID\_\_
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MetaFields: Array
# @param TagJsonNotTiled: 当EnableTag为true时,必须填写TagJsonNotTiled字段,TagJsonNotTiled用于标识tag信息是否json平铺,TagJsonNotTiled为true时不平铺,false时平铺
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TagJsonNotTiled: Boolean
# @param TimestampAccuracy: 投递时间戳精度,可选项 [1:秒;2:毫秒] ,默认是秒
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimestampAccuracy: Integer
attr_accessor :EnableTag, :MetaFields, :TagJsonNotTiled, :TimestampAccuracy
def initialize(enabletag=nil, metafields=nil, tagjsonnottiled=nil, timestampaccuracy=nil)
@EnableTag = enabletag
@MetaFields = metafields
@TagJsonNotTiled = tagjsonnottiled
@TimestampAccuracy = timestampaccuracy
end
def deserialize(params)
@EnableTag = params['EnableTag']
@MetaFields = params['MetaFields']
@TagJsonNotTiled = params['TagJsonNotTiled']
@TimestampAccuracy = params['TimestampAccuracy']
end
end
# 自建k8s-容器文件路径信息
class ContainerFileInfo < TencentCloud::Common::AbstractModel
# @param Namespace: namespace可以多个,用分隔号分割,例如A,B
# @type Namespace: String
# @param Container: 容器名称
# @type Container: String
# @param LogPath: 日志文件夹
# @type LogPath: String
# @param FilePattern: 日志名称
# @type FilePattern: String
# @param IncludeLabels: pod标签信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IncludeLabels: Array
# @param WorkLoad: 工作负载信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type WorkLoad: :class:`Tencentcloud::Cls.v20201016.models.ContainerWorkLoadInfo`
# @param ExcludeNamespace: 需要排除的namespace可以多个,用分隔号分割,例如A,B
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExcludeNamespace: String
# @param ExcludeLabels: 需要排除的pod标签信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExcludeLabels: Array
attr_accessor :Namespace, :Container, :LogPath, :FilePattern, :IncludeLabels, :WorkLoad, :ExcludeNamespace, :ExcludeLabels
def initialize(namespace=nil, container=nil, logpath=nil, filepattern=nil, includelabels=nil, workload=nil, excludenamespace=nil, excludelabels=nil)
@Namespace = namespace
@Container = container
@LogPath = logpath
@FilePattern = filepattern
@IncludeLabels = includelabels
@WorkLoad = workload
@ExcludeNamespace = excludenamespace
@ExcludeLabels = excludelabels
end
def deserialize(params)
@Namespace = params['Namespace']
@Container = params['Container']
@LogPath = params['LogPath']
@FilePattern = params['FilePattern']
@IncludeLabels = params['IncludeLabels']
unless params['WorkLoad'].nil?
@WorkLoad = ContainerWorkLoadInfo.new
@WorkLoad.deserialize(params['WorkLoad'])
end
@ExcludeNamespace = params['ExcludeNamespace']
@ExcludeLabels = params['ExcludeLabels']
end
end
# 自建k8s-容器标准输出信息
class ContainerStdoutInfo < TencentCloud::Common::AbstractModel
# @param AllContainers: 是否所有容器
# @type AllContainers: Boolean
# @param Container: container为空表所有的,不为空采集指定的容器
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Container: String
# @param Namespace: namespace可以多个,用分隔号分割,例如A,B;为空或者没有这个字段,表示所有namespace
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Namespace: String
# @param IncludeLabels: pod标签信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IncludeLabels: Array
# @param WorkLoads: 工作负载信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type WorkLoads: Array
# @param ExcludeNamespace: 需要排除的namespace可以多个,用分隔号分割,例如A,B
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExcludeNamespace: String
# @param ExcludeLabels: 需要排除的pod标签信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ExcludeLabels: Array
attr_accessor :AllContainers, :Container, :Namespace, :IncludeLabels, :WorkLoads, :ExcludeNamespace, :ExcludeLabels
def initialize(allcontainers=nil, container=nil, namespace=nil, includelabels=nil, workloads=nil, excludenamespace=nil, excludelabels=nil)
@AllContainers = allcontainers
@Container = container
@Namespace = namespace
@IncludeLabels = includelabels
@WorkLoads = workloads
@ExcludeNamespace = excludenamespace
@ExcludeLabels = excludelabels
end
def deserialize(params)
@AllContainers = params['AllContainers']
@Container = params['Container']
@Namespace = params['Namespace']
@IncludeLabels = params['IncludeLabels']
unless params['WorkLoads'].nil?
@WorkLoads = []
params['WorkLoads'].each do |i|
containerworkloadinfo_tmp = ContainerWorkLoadInfo.new
containerworkloadinfo_tmp.deserialize(i)
@WorkLoads << containerworkloadinfo_tmp
end
end
@ExcludeNamespace = params['ExcludeNamespace']
@ExcludeLabels = params['ExcludeLabels']
end
end
# 自建k8s-工作负载信息
class ContainerWorkLoadInfo < TencentCloud::Common::AbstractModel
# @param Kind: 工作负载的类型
# @type Kind: String
# @param Name: 工作负载的名称
# @type Name: String
# @param Container: 容器名
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Container: String
# @param Namespace: 命名空间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Namespace: String
attr_accessor :Kind, :Name, :Container, :Namespace
def initialize(kind=nil, name=nil, container=nil, namespace=nil)
@Kind = kind
@Name = name
@Container = container
@Namespace = namespace
end
def deserialize(params)
@Kind = params['Kind']
@Name = params['Name']
@Container = params['Container']
@Namespace = params['Namespace']
end
end
# 投递日志的内容格式配置
class ContentInfo < TencentCloud::Common::AbstractModel
# @param Format: 内容格式,支持json、csv
# @type Format: String
# @param Csv: csv格式内容描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Csv: :class:`Tencentcloud::Cls.v20201016.models.CsvInfo`
# @param Json: json格式内容描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Json: :class:`Tencentcloud::Cls.v20201016.models.JsonInfo`
# @param Parquet: parquet格式内容描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Parquet: :class:`Tencentcloud::Cls.v20201016.models.ParquetInfo`
attr_accessor :Format, :Csv, :Json, :Parquet
def initialize(format=nil, csv=nil, json=nil, parquet=nil)
@Format = format
@Csv = csv
@Json = json
@Parquet = parquet
end
def deserialize(params)
@Format = params['Format']
unless params['Csv'].nil?
@Csv = CsvInfo.new
@Csv.deserialize(params['Csv'])
end
unless params['Json'].nil?
@Json = JsonInfo.new
@Json.deserialize(params['Json'])
end
unless params['Parquet'].nil?
@Parquet = ParquetInfo.new
@Parquet.deserialize(params['Parquet'])
end
end
end
# CreateAlarmNotice请求参数结构体
class CreateAlarmNoticeRequest < TencentCloud::Common::AbstractModel
# @param Name: 通知渠道组名称。
# @type Name: String
# @param Type: 通知类型。可选值:
# Trigger - 告警触发
# Recovery - 告警恢复
# All - 告警触发和告警恢复
# @type Type: String
# @param NoticeReceivers: 通知接收对象。
# @type NoticeReceivers: Array
# @param WebCallbacks: 接口回调信息(包括企业微信)。
# @type WebCallbacks: Array
attr_accessor :Name, :Type, :NoticeReceivers, :WebCallbacks
def initialize(name=nil, type=nil, noticereceivers=nil, webcallbacks=nil)
@Name = name
@Type = type
@NoticeReceivers = noticereceivers
@WebCallbacks = webcallbacks
end
def deserialize(params)
@Name = params['Name']
@Type = params['Type']
unless params['NoticeReceivers'].nil?
@NoticeReceivers = []
params['NoticeReceivers'].each do |i|
noticereceiver_tmp = NoticeReceiver.new
noticereceiver_tmp.deserialize(i)
@NoticeReceivers << noticereceiver_tmp
end
end
unless params['WebCallbacks'].nil?
@WebCallbacks = []
params['WebCallbacks'].each do |i|
webcallback_tmp = WebCallback.new
webcallback_tmp.deserialize(i)
@WebCallbacks << webcallback_tmp
end
end
end
end
# CreateAlarmNotice返回参数结构体
class CreateAlarmNoticeResponse < TencentCloud::Common::AbstractModel
# @param AlarmNoticeId: 告警模板ID
# @type AlarmNoticeId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :AlarmNoticeId, :RequestId
def initialize(alarmnoticeid=nil, requestid=nil)
@AlarmNoticeId = alarmnoticeid
@RequestId = requestid
end
def deserialize(params)
@AlarmNoticeId = params['AlarmNoticeId']
@RequestId = params['RequestId']
end
end
# CreateAlarm请求参数结构体
class CreateAlarmRequest < TencentCloud::Common::AbstractModel
# @param Name: 告警策略名称
# @type Name: String
# @param AlarmTargets: 监控对象列表。
# @type AlarmTargets: Array
# @param MonitorTime: 监控任务运行时间点。
# @type MonitorTime: :class:`Tencentcloud::Cls.v20201016.models.MonitorTime`
# @param Condition: 触发条件。
# @type Condition: String
# @param TriggerCount: 持续周期。持续满足触发条件TriggerCount个周期后,再进行告警;最小值为1,最大值为10。
# @type TriggerCount: Integer
# @param AlarmPeriod: 告警重复的周期。单位是分钟。取值范围是0~1440。
# @type AlarmPeriod: Integer
# @param AlarmNoticeIds: 关联的告警通知模板列表。
# @type AlarmNoticeIds: Array
# @param Status: 是否开启告警策略。默认值为true
# @type Status: Boolean
# @param MessageTemplate: 用户自定义告警内容
# @type MessageTemplate: String
# @param CallBack: 用户自定义回调
# @type CallBack: :class:`Tencentcloud::Cls.v20201016.models.CallBackInfo`
# @param Analysis: 多维分析
# @type Analysis: Array
attr_accessor :Name, :AlarmTargets, :MonitorTime, :Condition, :TriggerCount, :AlarmPeriod, :AlarmNoticeIds, :Status, :MessageTemplate, :CallBack, :Analysis
def initialize(name=nil, alarmtargets=nil, monitortime=nil, condition=nil, triggercount=nil, alarmperiod=nil, alarmnoticeids=nil, status=nil, messagetemplate=nil, callback=nil, analysis=nil)
@Name = name
@AlarmTargets = alarmtargets
@MonitorTime = monitortime
@Condition = condition
@TriggerCount = triggercount
@AlarmPeriod = alarmperiod
@AlarmNoticeIds = alarmnoticeids
@Status = status
@MessageTemplate = messagetemplate
@CallBack = callback
@Analysis = analysis
end
def deserialize(params)
@Name = params['Name']
unless params['AlarmTargets'].nil?
@AlarmTargets = []
params['AlarmTargets'].each do |i|
alarmtarget_tmp = AlarmTarget.new
alarmtarget_tmp.deserialize(i)
@AlarmTargets << alarmtarget_tmp
end
end
unless params['MonitorTime'].nil?
@MonitorTime = MonitorTime.new
@MonitorTime.deserialize(params['MonitorTime'])
end
@Condition = params['Condition']
@TriggerCount = params['TriggerCount']
@AlarmPeriod = params['AlarmPeriod']
@AlarmNoticeIds = params['AlarmNoticeIds']
@Status = params['Status']
@MessageTemplate = params['MessageTemplate']
unless params['CallBack'].nil?
@CallBack = CallBackInfo.new
@CallBack.deserialize(params['CallBack'])
end
unless params['Analysis'].nil?
@Analysis = []
params['Analysis'].each do |i|
analysisdimensional_tmp = AnalysisDimensional.new
analysisdimensional_tmp.deserialize(i)
@Analysis << analysisdimensional_tmp
end
end
end
end
# CreateAlarm返回参数结构体
class CreateAlarmResponse < TencentCloud::Common::AbstractModel
# @param AlarmId: 告警策略ID。
# @type AlarmId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :AlarmId, :RequestId
def initialize(alarmid=nil, requestid=nil)
@AlarmId = alarmid
@RequestId = requestid
end
def deserialize(params)
@AlarmId = params['AlarmId']
@RequestId = params['RequestId']
end
end
# CreateConfigExtra请求参数结构体
class CreateConfigExtraRequest < TencentCloud::Common::AbstractModel
# @param Name: 采集配置规程名称,最长63个字符,只能包含小写字符、数字及分隔符(“-”),且必须以小写字符开头,数字或小写字符结尾
# @type Name: String
# @param TopicId: 日志主题id
# @type TopicId: String
# @param Type: 类型:container_stdout、container_file、host_file
# @type Type: String
# @param LogType: 采集的日志类型,json_log代表json格式日志,delimiter_log代表分隔符格式日志,minimalist_log代表极简日志,multiline_log代表多行日志,fullregex_log代表完整正则,默认为minimalist_log
# @type LogType: String
# @param ConfigFlag: 采集配置标
# @type ConfigFlag: String
# @param LogsetId: 日志集id
# @type LogsetId: String
# @param LogsetName: 日志集name
# @type LogsetName: String
# @param TopicName: 日志主题名称
# @type TopicName: String
# @param HostFile: 节点文件配置信息
# @type HostFile: :class:`Tencentcloud::Cls.v20201016.models.HostFileInfo`
# @param ContainerFile: 容器文件路径信息
# @type ContainerFile: :class:`Tencentcloud::Cls.v20201016.models.ContainerFileInfo`
# @param ContainerStdout: 容器标准输出信息
# @type ContainerStdout: :class:`Tencentcloud::Cls.v20201016.models.ContainerStdoutInfo`
# @param LogFormat: 日志格式化方式
# @type LogFormat: String
# @param ExtractRule: 提取规则,如果设置了ExtractRule,则必须设置LogType
# @type ExtractRule: :class:`Tencentcloud::Cls.v20201016.models.ExtractRuleInfo`
# @param ExcludePaths: 采集黑名单路径列表
# @type ExcludePaths: Array
# @param UserDefineRule: 用户自定义采集规则,Json格式序列化的字符串
# @type UserDefineRule: String
# @param GroupId: 绑定的机器组id
# @type GroupId: String
# @param GroupIds: 绑定的机器组id列表
# @type GroupIds: Array
attr_accessor :Name, :TopicId, :Type, :LogType, :ConfigFlag, :LogsetId, :LogsetName, :TopicName, :HostFile, :ContainerFile, :ContainerStdout, :LogFormat, :ExtractRule, :ExcludePaths, :UserDefineRule, :GroupId, :GroupIds
def initialize(name=nil, topicid=nil, type=nil, logtype=nil, configflag=nil, logsetid=nil, logsetname=nil, topicname=nil, hostfile=nil, containerfile=nil, containerstdout=nil, logformat=nil, extractrule=nil, excludepaths=nil, userdefinerule=nil, groupid=nil, groupids=nil)
@Name = name
@TopicId = topicid
@Type = type
@LogType = logtype
@ConfigFlag = configflag
@LogsetId = logsetid
@LogsetName = logsetname
@TopicName = topicname
@HostFile = hostfile
@ContainerFile = containerfile
@ContainerStdout = containerstdout
@LogFormat = logformat
@ExtractRule = extractrule
@ExcludePaths = excludepaths
@UserDefineRule = userdefinerule
@GroupId = groupid
@GroupIds = groupids
end
def deserialize(params)
@Name = params['Name']
@TopicId = params['TopicId']
@Type = params['Type']
@LogType = params['LogType']
@ConfigFlag = params['ConfigFlag']
@LogsetId = params['LogsetId']
@LogsetName = params['LogsetName']
@TopicName = params['TopicName']
unless params['HostFile'].nil?
@HostFile = HostFileInfo.new
@HostFile.deserialize(params['HostFile'])
end
unless params['ContainerFile'].nil?
@ContainerFile = ContainerFileInfo.new
@ContainerFile.deserialize(params['ContainerFile'])
end
unless params['ContainerStdout'].nil?
@ContainerStdout = ContainerStdoutInfo.new
@ContainerStdout.deserialize(params['ContainerStdout'])
end
@LogFormat = params['LogFormat']
unless params['ExtractRule'].nil?
@ExtractRule = ExtractRuleInfo.new
@ExtractRule.deserialize(params['ExtractRule'])
end
unless params['ExcludePaths'].nil?
@ExcludePaths = []
params['ExcludePaths'].each do |i|
excludepathinfo_tmp = ExcludePathInfo.new
excludepathinfo_tmp.deserialize(i)
@ExcludePaths << excludepathinfo_tmp
end
end
@UserDefineRule = params['UserDefineRule']
@GroupId = params['GroupId']
@GroupIds = params['GroupIds']
end
end
# CreateConfigExtra返回参数结构体
class CreateConfigExtraResponse < TencentCloud::Common::AbstractModel
# @param ConfigExtraId: 采集配置扩展信息ID
# @type ConfigExtraId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :ConfigExtraId, :RequestId
def initialize(configextraid=nil, requestid=nil)
@ConfigExtraId = configextraid
@RequestId = requestid
end
def deserialize(params)
@ConfigExtraId = params['ConfigExtraId']
@RequestId = params['RequestId']
end
end
# CreateConfig请求参数结构体
class CreateConfigRequest < TencentCloud::Common::AbstractModel
# @param Name: 采集配置名称
# @type Name: String
# @param Output: 采集配置所属日志主题ID即TopicId
# @type Output: String
# @param Path: 日志采集路径,包含文件名
# @type Path: String
# @param LogType: 采集的日志类型,json_log代表json格式日志,delimiter_log代表分隔符格式日志,minimalist_log代表极简日志,multiline_log代表多行日志,fullregex_log代表完整正则,默认为minimalist_log
# @type LogType: String
# @param ExtractRule: 提取规则,如果设置了ExtractRule,则必须设置LogType
# @type ExtractRule: :class:`Tencentcloud::Cls.v20201016.models.ExtractRuleInfo`
# @param ExcludePaths: 采集黑名单路径列表
# @type ExcludePaths: Array
# @param UserDefineRule: 用户自定义采集规则,Json格式序列化的字符串
# @type UserDefineRule: String
attr_accessor :Name, :Output, :Path, :LogType, :ExtractRule, :ExcludePaths, :UserDefineRule
def initialize(name=nil, output=nil, path=nil, logtype=nil, extractrule=nil, excludepaths=nil, userdefinerule=nil)
@Name = name
@Output = output
@Path = path
@LogType = logtype
@ExtractRule = extractrule
@ExcludePaths = excludepaths
@UserDefineRule = userdefinerule
end
def deserialize(params)
@Name = params['Name']
@Output = params['Output']
@Path = params['Path']
@LogType = params['LogType']
unless params['ExtractRule'].nil?
@ExtractRule = ExtractRuleInfo.new
@ExtractRule.deserialize(params['ExtractRule'])
end
unless params['ExcludePaths'].nil?
@ExcludePaths = []
params['ExcludePaths'].each do |i|
excludepathinfo_tmp = ExcludePathInfo.new
excludepathinfo_tmp.deserialize(i)
@ExcludePaths << excludepathinfo_tmp
end
end
@UserDefineRule = params['UserDefineRule']
end
end
# CreateConfig返回参数结构体
class CreateConfigResponse < TencentCloud::Common::AbstractModel
# @param ConfigId: 采集配置ID
# @type ConfigId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :ConfigId, :RequestId
def initialize(configid=nil, requestid=nil)
@ConfigId = configid
@RequestId = requestid
end
def deserialize(params)
@ConfigId = params['ConfigId']
@RequestId = params['RequestId']
end
end
# CreateConsumer请求参数结构体
class CreateConsumerRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 投递任务绑定的日志主题 ID
# @type TopicId: String
# @param NeedContent: 是否投递日志的元数据信息,默认为 true
# @type NeedContent: Boolean
# @param Content: 如果需要投递元数据信息,元数据信息的描述
# @type Content: :class:`Tencentcloud::Cls.v20201016.models.ConsumerContent`
# @param Ckafka: CKafka的描述
# @type Ckafka: :class:`Tencentcloud::Cls.v20201016.models.Ckafka`
# @param Compression: 投递时压缩方式,取值0,2,3。[0:NONE;2:SNAPPY;3:LZ4]
# @type Compression: Integer
attr_accessor :TopicId, :NeedContent, :Content, :Ckafka, :Compression
def initialize(topicid=nil, needcontent=nil, content=nil, ckafka=nil, compression=nil)
@TopicId = topicid
@NeedContent = needcontent
@Content = content
@Ckafka = ckafka
@Compression = compression
end
def deserialize(params)
@TopicId = params['TopicId']
@NeedContent = params['NeedContent']
unless params['Content'].nil?
@Content = ConsumerContent.new
@Content.deserialize(params['Content'])
end
unless params['Ckafka'].nil?
@Ckafka = Ckafka.new
@Ckafka.deserialize(params['Ckafka'])
end
@Compression = params['Compression']
end
end
# CreateConsumer返回参数结构体
class CreateConsumerResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# CreateExport请求参数结构体
class CreateExportRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param Count: 日志导出数量, 最大值5000万
# @type Count: Integer
# @param Query: 日志导出检索语句,不支持[SQL语句]
# @type Query: String
# @param From: 日志导出起始时间,毫秒时间戳
# @type From: Integer
# @param To: 日志导出结束时间,毫秒时间戳
# @type To: Integer
# @param Order: 日志导出时间排序。desc,asc,默认为desc
# @type Order: String
# @param Format: 日志导出数据格式。json,csv,默认为json
# @type Format: String
attr_accessor :TopicId, :Count, :Query, :From, :To, :Order, :Format
def initialize(topicid=nil, count=nil, query=nil, from=nil, to=nil, order=nil, format=nil)
@TopicId = topicid
@Count = count
@Query = query
@From = from
@To = to
@Order = order
@Format = format
end
def deserialize(params)
@TopicId = params['TopicId']
@Count = params['Count']
@Query = params['Query']
@From = params['From']
@To = params['To']
@Order = params['Order']
@Format = params['Format']
end
end
# CreateExport返回参数结构体
class CreateExportResponse < TencentCloud::Common::AbstractModel
# @param ExportId: 日志导出ID。
# @type ExportId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :ExportId, :RequestId
def initialize(exportid=nil, requestid=nil)
@ExportId = exportid
@RequestId = requestid
end
def deserialize(params)
@ExportId = params['ExportId']
@RequestId = params['RequestId']
end
end
# CreateIndex请求参数结构体
class CreateIndexRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param Rule: 索引规则
# @type Rule: :class:`Tencentcloud::Cls.v20201016.models.RuleInfo`
# @param Status: 是否生效,默认为true
# @type Status: Boolean
# @param IncludeInternalFields: 全文索引系统预置字段标记,默认false。 false:不包含系统预置字段, true:包含系统预置字段
# @type IncludeInternalFields: Boolean
# @param MetadataFlag: 元数据相关标志位,默认为0。 0:全文索引包括开启键值索引的元数据字段, 1:全文索引包括所有元数据字段,2:全文索引不包括元数据字段。
# @type MetadataFlag: Integer
attr_accessor :TopicId, :Rule, :Status, :IncludeInternalFields, :MetadataFlag
def initialize(topicid=nil, rule=nil, status=nil, includeinternalfields=nil, metadataflag=nil)
@TopicId = topicid
@Rule = rule
@Status = status
@IncludeInternalFields = includeinternalfields
@MetadataFlag = metadataflag
end
def deserialize(params)
@TopicId = params['TopicId']
unless params['Rule'].nil?
@Rule = RuleInfo.new
@Rule.deserialize(params['Rule'])
end
@Status = params['Status']
@IncludeInternalFields = params['IncludeInternalFields']
@MetadataFlag = params['MetadataFlag']
end
end
# CreateIndex返回参数结构体
class CreateIndexResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# CreateLogset请求参数结构体
class CreateLogsetRequest < TencentCloud::Common::AbstractModel
# @param LogsetName: 日志集名字,不能重名
# @type LogsetName: String
# @param Tags: 标签描述列表。最大支持10个标签键值对,并且不能有重复的键值对
# @type Tags: Array
attr_accessor :LogsetName, :Tags
def initialize(logsetname=nil, tags=nil)
@LogsetName = logsetname
@Tags = tags
end
def deserialize(params)
@LogsetName = params['LogsetName']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
end
end
# CreateLogset返回参数结构体
class CreateLogsetResponse < TencentCloud::Common::AbstractModel
# @param LogsetId: 日志集ID
# @type LogsetId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :LogsetId, :RequestId
def initialize(logsetid=nil, requestid=nil)
@LogsetId = logsetid
@RequestId = requestid
end
def deserialize(params)
@LogsetId = params['LogsetId']
@RequestId = params['RequestId']
end
end
# CreateMachineGroup请求参数结构体
class CreateMachineGroupRequest < TencentCloud::Common::AbstractModel
# @param GroupName: 机器组名字,不能重复
# @type GroupName: String
# @param MachineGroupType: 创建机器组类型,Type为ip,Values中为Ip字符串列表创建机器组,Type为label, Values中为标签字符串列表创建机器组
# @type MachineGroupType: :class:`Tencentcloud::Cls.v20201016.models.MachineGroupTypeInfo`
# @param Tags: 标签描述列表,通过指定该参数可以同时绑定标签到相应的机器组。最大支持10个标签键值对,同一个资源只能绑定到同一个标签键下。
# @type Tags: Array
# @param AutoUpdate: 是否开启机器组自动更新
# @type AutoUpdate: Boolean
# @param UpdateStartTime: 升级开始时间,建议业务低峰期升级LogListener
# @type UpdateStartTime: String
# @param UpdateEndTime: 升级结束时间,建议业务低峰期升级LogListener
# @type UpdateEndTime: String
# @param ServiceLogging: 是否开启服务日志,用于记录因Loglistener 服务自身产生的log,开启后,会创建内部日志集cls_service_logging和日志主题loglistener_status,loglistener_alarm,loglistener_business,不产生计费
# @type ServiceLogging: Boolean
attr_accessor :GroupName, :MachineGroupType, :Tags, :AutoUpdate, :UpdateStartTime, :UpdateEndTime, :ServiceLogging
def initialize(groupname=nil, machinegrouptype=nil, tags=nil, autoupdate=nil, updatestarttime=nil, updateendtime=nil, servicelogging=nil)
@GroupName = groupname
@MachineGroupType = machinegrouptype
@Tags = tags
@AutoUpdate = autoupdate
@UpdateStartTime = updatestarttime
@UpdateEndTime = updateendtime
@ServiceLogging = servicelogging
end
def deserialize(params)
@GroupName = params['GroupName']
unless params['MachineGroupType'].nil?
@MachineGroupType = MachineGroupTypeInfo.new
@MachineGroupType.deserialize(params['MachineGroupType'])
end
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@AutoUpdate = params['AutoUpdate']
@UpdateStartTime = params['UpdateStartTime']
@UpdateEndTime = params['UpdateEndTime']
@ServiceLogging = params['ServiceLogging']
end
end
# CreateMachineGroup返回参数结构体
class CreateMachineGroupResponse < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :GroupId, :RequestId
def initialize(groupid=nil, requestid=nil)
@GroupId = groupid
@RequestId = requestid
end
def deserialize(params)
@GroupId = params['GroupId']
@RequestId = params['RequestId']
end
end
# CreateShipper请求参数结构体
class CreateShipperRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 创建的投递规则所属的日志主题ID
# @type TopicId: String
# @param Bucket: 创建的投递规则投递的bucket
# @type Bucket: String
# @param Prefix: 创建的投递规则投递目录的前缀
# @type Prefix: String
# @param ShipperName: 投递规则的名字
# @type ShipperName: String
# @param Interval: 投递的时间间隔,单位 秒,默认300,范围 300-900
# @type Interval: Integer
# @param MaxSize: 投递的文件的最大值,单位 MB,默认256,范围 100-256
# @type MaxSize: Integer
# @param FilterRules: 投递日志的过滤规则,匹配的日志进行投递,各rule之间是and关系,最多5个,数组为空则表示不过滤而全部投递
# @type FilterRules: Array
# @param Partition: 投递日志的分区规则,支持strftime的时间格式表示
# @type Partition: String
# @param Compress: 投递日志的压缩配置
# @type Compress: :class:`Tencentcloud::Cls.v20201016.models.CompressInfo`
# @param Content: 投递日志的内容格式配置
# @type Content: :class:`Tencentcloud::Cls.v20201016.models.ContentInfo`
# @param FilenameMode: 投递文件命名配置,0:随机数命名,1:投递时间命名,默认0(随机数命名)
# @type FilenameMode: Integer
attr_accessor :TopicId, :Bucket, :Prefix, :ShipperName, :Interval, :MaxSize, :FilterRules, :Partition, :Compress, :Content, :FilenameMode
def initialize(topicid=nil, bucket=nil, prefix=nil, shippername=nil, interval=nil, maxsize=nil, filterrules=nil, partition=nil, compress=nil, content=nil, filenamemode=nil)
@TopicId = topicid
@Bucket = bucket
@Prefix = prefix
@ShipperName = shippername
@Interval = interval
@MaxSize = maxsize
@FilterRules = filterrules
@Partition = partition
@Compress = compress
@Content = content
@FilenameMode = filenamemode
end
def deserialize(params)
@TopicId = params['TopicId']
@Bucket = params['Bucket']
@Prefix = params['Prefix']
@ShipperName = params['ShipperName']
@Interval = params['Interval']
@MaxSize = params['MaxSize']
unless params['FilterRules'].nil?
@FilterRules = []
params['FilterRules'].each do |i|
filterruleinfo_tmp = FilterRuleInfo.new
filterruleinfo_tmp.deserialize(i)
@FilterRules << filterruleinfo_tmp
end
end
@Partition = params['Partition']
unless params['Compress'].nil?
@Compress = CompressInfo.new
@Compress.deserialize(params['Compress'])
end
unless params['Content'].nil?
@Content = ContentInfo.new
@Content.deserialize(params['Content'])
end
@FilenameMode = params['FilenameMode']
end
end
# CreateShipper返回参数结构体
class CreateShipperResponse < TencentCloud::Common::AbstractModel
# @param ShipperId: 投递规则ID
# @type ShipperId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :ShipperId, :RequestId
def initialize(shipperid=nil, requestid=nil)
@ShipperId = shipperid
@RequestId = requestid
end
def deserialize(params)
@ShipperId = params['ShipperId']
@RequestId = params['RequestId']
end
end
# CreateTopic请求参数结构体
class CreateTopicRequest < TencentCloud::Common::AbstractModel
# @param LogsetId: 日志集ID
# @type LogsetId: String
# @param TopicName: 日志主题名称
# @type TopicName: String
# @param PartitionCount: 日志主题分区个数。默认创建1个,最大支持创建10个分区。
# @type PartitionCount: Integer
# @param Tags: 标签描述列表,通过指定该参数可以同时绑定标签到相应的日志主题。最大支持10个标签键值对,同一个资源只能绑定到同一个标签键下。
# @type Tags: Array
# @param AutoSplit: 是否开启自动分裂,默认值为true
# @type AutoSplit: Boolean
# @param MaxSplitPartitions: 开启自动分裂后,每个主题能够允许的最大分区数,默认值为50
# @type MaxSplitPartitions: Integer
# @param StorageType: 日志主题的存储类型,可选值 hot(标准存储),cold(低频存储);默认为hot。
# @type StorageType: String
# @param Period: 生命周期,单位天,标准存储取值范围1\~3600,低频存储取值范围7\~3600天。取值为3640时代表永久保存
# @type Period: Integer
attr_accessor :LogsetId, :TopicName, :PartitionCount, :Tags, :AutoSplit, :MaxSplitPartitions, :StorageType, :Period
def initialize(logsetid=nil, topicname=nil, partitioncount=nil, tags=nil, autosplit=nil, maxsplitpartitions=nil, storagetype=nil, period=nil)
@LogsetId = logsetid
@TopicName = topicname
@PartitionCount = partitioncount
@Tags = tags
@AutoSplit = autosplit
@MaxSplitPartitions = maxsplitpartitions
@StorageType = storagetype
@Period = period
end
def deserialize(params)
@LogsetId = params['LogsetId']
@TopicName = params['TopicName']
@PartitionCount = params['PartitionCount']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@AutoSplit = params['AutoSplit']
@MaxSplitPartitions = params['MaxSplitPartitions']
@StorageType = params['StorageType']
@Period = params['Period']
end
end
# CreateTopic返回参数结构体
class CreateTopicResponse < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TopicId, :RequestId
def initialize(topicid=nil, requestid=nil)
@TopicId = topicid
@RequestId = requestid
end
def deserialize(params)
@TopicId = params['TopicId']
@RequestId = params['RequestId']
end
end
# csv内容描述
class CsvInfo < TencentCloud::Common::AbstractModel
# @param PrintKey: csv首行是否打印key
# @type PrintKey: Boolean
# @param Keys: 每列key的名字
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Keys: Array
# @param Delimiter: 各字段间的分隔符
# @type Delimiter: String
# @param EscapeChar: 若字段内容中包含分隔符,则使用该转义符包裹改字段,只能填写单引号、双引号、空字符串
# @type EscapeChar: String
# @param NonExistingField: 对于上面指定的不存在字段使用该内容填充
# @type NonExistingField: String
attr_accessor :PrintKey, :Keys, :Delimiter, :EscapeChar, :NonExistingField
def initialize(printkey=nil, keys=nil, delimiter=nil, escapechar=nil, nonexistingfield=nil)
@PrintKey = printkey
@Keys = keys
@Delimiter = delimiter
@EscapeChar = escapechar
@NonExistingField = nonexistingfield
end
def deserialize(params)
@PrintKey = params['PrintKey']
@Keys = params['Keys']
@Delimiter = params['Delimiter']
@EscapeChar = params['EscapeChar']
@NonExistingField = params['NonExistingField']
end
end
# DeleteAlarmNotice请求参数结构体
class DeleteAlarmNoticeRequest < TencentCloud::Common::AbstractModel
# @param AlarmNoticeId: 通知渠道组ID
# @type AlarmNoticeId: String
attr_accessor :AlarmNoticeId
def initialize(alarmnoticeid=nil)
@AlarmNoticeId = alarmnoticeid
end
def deserialize(params)
@AlarmNoticeId = params['AlarmNoticeId']
end
end
# DeleteAlarmNotice返回参数结构体
class DeleteAlarmNoticeResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteAlarm请求参数结构体
class DeleteAlarmRequest < TencentCloud::Common::AbstractModel
# @param AlarmId: 告警策略ID。
# @type AlarmId: String
attr_accessor :AlarmId
def initialize(alarmid=nil)
@AlarmId = alarmid
end
def deserialize(params)
@AlarmId = params['AlarmId']
end
end
# DeleteAlarm返回参数结构体
class DeleteAlarmResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteConfigExtra请求参数结构体
class DeleteConfigExtraRequest < TencentCloud::Common::AbstractModel
# @param ConfigExtraId: 采集规则扩展配置ID
# @type ConfigExtraId: String
attr_accessor :ConfigExtraId
def initialize(configextraid=nil)
@ConfigExtraId = configextraid
end
def deserialize(params)
@ConfigExtraId = params['ConfigExtraId']
end
end
# DeleteConfigExtra返回参数结构体
class DeleteConfigExtraResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteConfigFromMachineGroup请求参数结构体
class DeleteConfigFromMachineGroupRequest < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
# @param ConfigId: 采集配置ID
# @type ConfigId: String
attr_accessor :GroupId, :ConfigId
def initialize(groupid=nil, configid=nil)
@GroupId = groupid
@ConfigId = configid
end
def deserialize(params)
@GroupId = params['GroupId']
@ConfigId = params['ConfigId']
end
end
# DeleteConfigFromMachineGroup返回参数结构体
class DeleteConfigFromMachineGroupResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteConfig请求参数结构体
class DeleteConfigRequest < TencentCloud::Common::AbstractModel
# @param ConfigId: 采集规则配置ID
# @type ConfigId: String
attr_accessor :ConfigId
def initialize(configid=nil)
@ConfigId = configid
end
def deserialize(params)
@ConfigId = params['ConfigId']
end
end
# DeleteConfig返回参数结构体
class DeleteConfigResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteConsumer请求参数结构体
class DeleteConsumerRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 投递任务绑定的日志主题 ID
# @type TopicId: String
attr_accessor :TopicId
def initialize(topicid=nil)
@TopicId = topicid
end
def deserialize(params)
@TopicId = params['TopicId']
end
end
# DeleteConsumer返回参数结构体
class DeleteConsumerResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteExport请求参数结构体
class DeleteExportRequest < TencentCloud::Common::AbstractModel
# @param ExportId: 日志导出ID
# @type ExportId: String
attr_accessor :ExportId
def initialize(exportid=nil)
@ExportId = exportid
end
def deserialize(params)
@ExportId = params['ExportId']
end
end
# DeleteExport返回参数结构体
class DeleteExportResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteIndex请求参数结构体
class DeleteIndexRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
attr_accessor :TopicId
def initialize(topicid=nil)
@TopicId = topicid
end
def deserialize(params)
@TopicId = params['TopicId']
end
end
# DeleteIndex返回参数结构体
class DeleteIndexResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteLogset请求参数结构体
class DeleteLogsetRequest < TencentCloud::Common::AbstractModel
# @param LogsetId: 日志集ID
# @type LogsetId: String
attr_accessor :LogsetId
def initialize(logsetid=nil)
@LogsetId = logsetid
end
def deserialize(params)
@LogsetId = params['LogsetId']
end
end
# DeleteLogset返回参数结构体
class DeleteLogsetResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteMachineGroupInfo请求参数结构体
class DeleteMachineGroupInfoRequest < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
# @param MachineGroupType: 机器组类型
# 目前type支持 ip 和 label
# @type MachineGroupType: :class:`Tencentcloud::Cls.v20201016.models.MachineGroupTypeInfo`
attr_accessor :GroupId, :MachineGroupType
def initialize(groupid=nil, machinegrouptype=nil)
@GroupId = groupid
@MachineGroupType = machinegrouptype
end
def deserialize(params)
@GroupId = params['GroupId']
unless params['MachineGroupType'].nil?
@MachineGroupType = MachineGroupTypeInfo.new
@MachineGroupType.deserialize(params['MachineGroupType'])
end
end
end
# DeleteMachineGroupInfo返回参数结构体
class DeleteMachineGroupInfoResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteMachineGroup请求参数结构体
class DeleteMachineGroupRequest < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
attr_accessor :GroupId
def initialize(groupid=nil)
@GroupId = groupid
end
def deserialize(params)
@GroupId = params['GroupId']
end
end
# DeleteMachineGroup返回参数结构体
class DeleteMachineGroupResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteShipper请求参数结构体
class DeleteShipperRequest < TencentCloud::Common::AbstractModel
# @param ShipperId: 投递规则ID
# @type ShipperId: String
attr_accessor :ShipperId
def initialize(shipperid=nil)
@ShipperId = shipperid
end
def deserialize(params)
@ShipperId = params['ShipperId']
end
end
# DeleteShipper返回参数结构体
class DeleteShipperResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DeleteTopic请求参数结构体
class DeleteTopicRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
attr_accessor :TopicId
def initialize(topicid=nil)
@TopicId = topicid
end
def deserialize(params)
@TopicId = params['TopicId']
end
end
# DeleteTopic返回参数结构体
class DeleteTopicResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# DescribeAlarmNotices请求参数结构体
class DescribeAlarmNoticesRequest < TencentCloud::Common::AbstractModel
# @param Filters: name
# 按照【通知渠道组名称】进行过滤。
# 类型:String
# 必选:否
# alarmNoticeId
# 按照【通知渠道组ID】进行过滤。
# 类型:String
# 必选:否
# uid
# 按照【接收用户ID】进行过滤。
# 类型:String
# 必选:否
# groupId
# 按照【接收用户组ID】进行过滤。
# 类型:String
# 必选:否
# 每次请求的Filters的上限为10,Filter.Values的上限为5。
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0。
# @type Offset: Integer
# @param Limit: 分页单页限制数目,默认值为20,最大值100。
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeAlarmNotices返回参数结构体
class DescribeAlarmNoticesResponse < TencentCloud::Common::AbstractModel
# @param AlarmNotices: 告警通知模板列表。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AlarmNotices: Array
# @param TotalCount: 符合条件的告警通知模板总数。
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :AlarmNotices, :TotalCount, :RequestId
def initialize(alarmnotices=nil, totalcount=nil, requestid=nil)
@AlarmNotices = alarmnotices
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['AlarmNotices'].nil?
@AlarmNotices = []
params['AlarmNotices'].each do |i|
alarmnotice_tmp = AlarmNotice.new
alarmnotice_tmp.deserialize(i)
@AlarmNotices << alarmnotice_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeAlarms请求参数结构体
class DescribeAlarmsRequest < TencentCloud::Common::AbstractModel
# @param Filters:
name
# 按照【告警策略名称】进行过滤。
# 类型:String
# 必选:否
#
alarmId
# 按照【告警策略ID】进行过滤。
# 类型:String
# 必选:否
#
topicId
# 按照【监控对象的日志主题ID】进行过滤。
# 类型:String
# 必选:否
#
enable
# 按照【启用状态】进行过滤。
# 类型:String
# 备注:enable参数值范围: 1, t, T, TRUE, true, True, 0, f, F, FALSE, false, False。 其它值将返回参数错误信息.
# 必选:否
# 每次请求的Filters的上限为10,Filter.Values的上限为5。
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0。
# @type Offset: Integer
# @param Limit: 分页单页限制数目,默认值为20,最大值100。
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeAlarms返回参数结构体
class DescribeAlarmsResponse < TencentCloud::Common::AbstractModel
# @param Alarms: 告警策略列表。
# @type Alarms: Array
# @param TotalCount: 符合查询条件的告警策略数目。
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Alarms, :TotalCount, :RequestId
def initialize(alarms=nil, totalcount=nil, requestid=nil)
@Alarms = alarms
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['Alarms'].nil?
@Alarms = []
params['Alarms'].each do |i|
alarminfo_tmp = AlarmInfo.new
alarminfo_tmp.deserialize(i)
@Alarms << alarminfo_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeConfigExtras请求参数结构体
class DescribeConfigExtrasRequest < TencentCloud::Common::AbstractModel
# @param Filters: 支持的key: topicId,name, configExtraId, machineGroupId
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0
# @type Offset: Integer
# @param Limit: 分页单页的限制数目,默认值为20,最大值100
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeConfigExtras返回参数结构体
class DescribeConfigExtrasResponse < TencentCloud::Common::AbstractModel
# @param Configs: 采集配置列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Configs: Array
# @param TotalCount: 过滤到的总数目
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Configs, :TotalCount, :RequestId
def initialize(configs=nil, totalcount=nil, requestid=nil)
@Configs = configs
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['Configs'].nil?
@Configs = []
params['Configs'].each do |i|
configextrainfo_tmp = ConfigExtraInfo.new
configextrainfo_tmp.deserialize(i)
@Configs << configextrainfo_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeConfigMachineGroups请求参数结构体
class DescribeConfigMachineGroupsRequest < TencentCloud::Common::AbstractModel
# @param ConfigId: 采集配置ID
# @type ConfigId: String
attr_accessor :ConfigId
def initialize(configid=nil)
@ConfigId = configid
end
def deserialize(params)
@ConfigId = params['ConfigId']
end
end
# DescribeConfigMachineGroups返回参数结构体
class DescribeConfigMachineGroupsResponse < TencentCloud::Common::AbstractModel
# @param MachineGroups: 采集规则配置绑定的机器组列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MachineGroups: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :MachineGroups, :RequestId
def initialize(machinegroups=nil, requestid=nil)
@MachineGroups = machinegroups
@RequestId = requestid
end
def deserialize(params)
unless params['MachineGroups'].nil?
@MachineGroups = []
params['MachineGroups'].each do |i|
machinegroupinfo_tmp = MachineGroupInfo.new
machinegroupinfo_tmp.deserialize(i)
@MachineGroups << machinegroupinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeConfigs请求参数结构体
class DescribeConfigsRequest < TencentCloud::Common::AbstractModel
# @param Filters:
configName
# 按照【采集配置名称】进行模糊匹配过滤。
# 类型:String
# 必选:否
#
configId
# 按照【采集配置ID】进行过滤。
# 类型:String
# 必选:否
#
topicId
# 按照【日志主题】进行过滤。
# 类型:String
# 必选:否
# 每次请求的Filters的上限为10,Filter.Values的上限为5。
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0
# @type Offset: Integer
# @param Limit: 分页单页的限制数目,默认值为20,最大值100
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeConfigs返回参数结构体
class DescribeConfigsResponse < TencentCloud::Common::AbstractModel
# @param Configs: 采集配置列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Configs: Array
# @param TotalCount: 过滤到的总数目
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Configs, :TotalCount, :RequestId
def initialize(configs=nil, totalcount=nil, requestid=nil)
@Configs = configs
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['Configs'].nil?
@Configs = []
params['Configs'].each do |i|
configinfo_tmp = ConfigInfo.new
configinfo_tmp.deserialize(i)
@Configs << configinfo_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeConsumer请求参数结构体
class DescribeConsumerRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 投递任务绑定的日志主题 ID
# @type TopicId: String
attr_accessor :TopicId
def initialize(topicid=nil)
@TopicId = topicid
end
def deserialize(params)
@TopicId = params['TopicId']
end
end
# DescribeConsumer返回参数结构体
class DescribeConsumerResponse < TencentCloud::Common::AbstractModel
# @param Effective: 投递任务是否生效
# @type Effective: Boolean
# @param NeedContent: 是否投递日志的元数据信息
# @type NeedContent: Boolean
# @param Content: 如果需要投递元数据信息,元数据信息的描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Content: :class:`Tencentcloud::Cls.v20201016.models.ConsumerContent`
# @param Ckafka: CKafka的描述
# @type Ckafka: :class:`Tencentcloud::Cls.v20201016.models.Ckafka`
# @param Compression: 压缩方式[0:NONE;2:SNAPPY;3:LZ4]
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Compression: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Effective, :NeedContent, :Content, :Ckafka, :Compression, :RequestId
def initialize(effective=nil, needcontent=nil, content=nil, ckafka=nil, compression=nil, requestid=nil)
@Effective = effective
@NeedContent = needcontent
@Content = content
@Ckafka = ckafka
@Compression = compression
@RequestId = requestid
end
def deserialize(params)
@Effective = params['Effective']
@NeedContent = params['NeedContent']
unless params['Content'].nil?
@Content = ConsumerContent.new
@Content.deserialize(params['Content'])
end
unless params['Ckafka'].nil?
@Ckafka = Ckafka.new
@Ckafka.deserialize(params['Ckafka'])
end
@Compression = params['Compression']
@RequestId = params['RequestId']
end
end
# DescribeExports请求参数结构体
class DescribeExportsRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param Offset: 分页的偏移量,默认值为0
# @type Offset: Integer
# @param Limit: 分页单页限制数目,默认值为20,最大值100
# @type Limit: Integer
attr_accessor :TopicId, :Offset, :Limit
def initialize(topicid=nil, offset=nil, limit=nil)
@TopicId = topicid
@Offset = offset
@Limit = limit
end
def deserialize(params)
@TopicId = params['TopicId']
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeExports返回参数结构体
class DescribeExportsResponse < TencentCloud::Common::AbstractModel
# @param Exports: 日志导出列表
# @type Exports: Array
# @param TotalCount: 总数目
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Exports, :TotalCount, :RequestId
def initialize(exports=nil, totalcount=nil, requestid=nil)
@Exports = exports
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['Exports'].nil?
@Exports = []
params['Exports'].each do |i|
exportinfo_tmp = ExportInfo.new
exportinfo_tmp.deserialize(i)
@Exports << exportinfo_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeIndex请求参数结构体
class DescribeIndexRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
attr_accessor :TopicId
def initialize(topicid=nil)
@TopicId = topicid
end
def deserialize(params)
@TopicId = params['TopicId']
end
end
# DescribeIndex返回参数结构体
class DescribeIndexResponse < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param Status: 是否生效
# @type Status: Boolean
# @param Rule: 索引配置信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Rule: :class:`Tencentcloud::Cls.v20201016.models.RuleInfo`
# @param ModifyTime: 索引修改时间,初始值为索引创建时间。
# @type ModifyTime: String
# @param IncludeInternalFields: 全文索引系统预置字段标记,默认false。 false:不包含系统预置字段, true:包含系统预置字段
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IncludeInternalFields: Boolean
# @param MetadataFlag: 元数据相关标志位,默认为0。 0:全文索引包括开启键值索引的元数据字段, 1:全文索引包括所有元数据字段,2:全文索引不包括元数据字段。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MetadataFlag: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TopicId, :Status, :Rule, :ModifyTime, :IncludeInternalFields, :MetadataFlag, :RequestId
def initialize(topicid=nil, status=nil, rule=nil, modifytime=nil, includeinternalfields=nil, metadataflag=nil, requestid=nil)
@TopicId = topicid
@Status = status
@Rule = rule
@ModifyTime = modifytime
@IncludeInternalFields = includeinternalfields
@MetadataFlag = metadataflag
@RequestId = requestid
end
def deserialize(params)
@TopicId = params['TopicId']
@Status = params['Status']
unless params['Rule'].nil?
@Rule = RuleInfo.new
@Rule.deserialize(params['Rule'])
end
@ModifyTime = params['ModifyTime']
@IncludeInternalFields = params['IncludeInternalFields']
@MetadataFlag = params['MetadataFlag']
@RequestId = params['RequestId']
end
end
# DescribeLogContext请求参数结构体
class DescribeLogContextRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 要查询的日志主题ID
# @type TopicId: String
# @param BTime: 日志时间, 格式: YYYY-mm-dd HH:MM:SS.FFF
# @type BTime: String
# @param PkgId: 日志包序号
# @type PkgId: String
# @param PkgLogId: 日志包内一条日志的序号
# @type PkgLogId: Integer
# @param PrevLogs: 上文日志条数, 默认值10
# @type PrevLogs: Integer
# @param NextLogs: 下文日志条数, 默认值10
# @type NextLogs: Integer
attr_accessor :TopicId, :BTime, :PkgId, :PkgLogId, :PrevLogs, :NextLogs
def initialize(topicid=nil, btime=nil, pkgid=nil, pkglogid=nil, prevlogs=nil, nextlogs=nil)
@TopicId = topicid
@BTime = btime
@PkgId = pkgid
@PkgLogId = pkglogid
@PrevLogs = prevlogs
@NextLogs = nextlogs
end
def deserialize(params)
@TopicId = params['TopicId']
@BTime = params['BTime']
@PkgId = params['PkgId']
@PkgLogId = params['PkgLogId']
@PrevLogs = params['PrevLogs']
@NextLogs = params['NextLogs']
end
end
# DescribeLogContext返回参数结构体
class DescribeLogContextResponse < TencentCloud::Common::AbstractModel
# @param LogContextInfos: 日志上下文信息集合
# @type LogContextInfos: Array
# @param PrevOver: 上文日志是否已经返回
# @type PrevOver: Boolean
# @param NextOver: 下文日志是否已经返回
# @type NextOver: Boolean
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :LogContextInfos, :PrevOver, :NextOver, :RequestId
def initialize(logcontextinfos=nil, prevover=nil, nextover=nil, requestid=nil)
@LogContextInfos = logcontextinfos
@PrevOver = prevover
@NextOver = nextover
@RequestId = requestid
end
def deserialize(params)
unless params['LogContextInfos'].nil?
@LogContextInfos = []
params['LogContextInfos'].each do |i|
logcontextinfo_tmp = LogContextInfo.new
logcontextinfo_tmp.deserialize(i)
@LogContextInfos << logcontextinfo_tmp
end
end
@PrevOver = params['PrevOver']
@NextOver = params['NextOver']
@RequestId = params['RequestId']
end
end
# DescribeLogHistogram请求参数结构体
class DescribeLogHistogramRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 要查询的日志主题ID
# @type TopicId: String
# @param From: 要查询的日志的起始时间,Unix时间戳,单位ms
# @type From: Integer
# @param To: 要查询的日志的结束时间,Unix时间戳,单位ms
# @type To: Integer
# @param Query: 查询语句
# @type Query: String
# @param Interval: 时间间隔: 单位ms 限制性条件:(To-From) / interval <= 200
# @type Interval: Integer
attr_accessor :TopicId, :From, :To, :Query, :Interval
def initialize(topicid=nil, from=nil, to=nil, query=nil, interval=nil)
@TopicId = topicid
@From = from
@To = to
@Query = query
@Interval = interval
end
def deserialize(params)
@TopicId = params['TopicId']
@From = params['From']
@To = params['To']
@Query = params['Query']
@Interval = params['Interval']
end
end
# DescribeLogHistogram返回参数结构体
class DescribeLogHistogramResponse < TencentCloud::Common::AbstractModel
# @param Interval: 统计周期: 单位ms
# @type Interval: Integer
# @param TotalCount: 命中关键字的日志总条数
# @type TotalCount: Integer
# @param HistogramInfos: 周期内统计结果详情
# @type HistogramInfos: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Interval, :TotalCount, :HistogramInfos, :RequestId
def initialize(interval=nil, totalcount=nil, histograminfos=nil, requestid=nil)
@Interval = interval
@TotalCount = totalcount
@HistogramInfos = histograminfos
@RequestId = requestid
end
def deserialize(params)
@Interval = params['Interval']
@TotalCount = params['TotalCount']
unless params['HistogramInfos'].nil?
@HistogramInfos = []
params['HistogramInfos'].each do |i|
histograminfo_tmp = HistogramInfo.new
histograminfo_tmp.deserialize(i)
@HistogramInfos << histograminfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeLogsets请求参数结构体
class DescribeLogsetsRequest < TencentCloud::Common::AbstractModel
# @param Filters:
logsetName
# 按照【日志集名称】进行过滤。
# 类型:String
# 必选:否
#
logsetId
# 按照【日志集ID】进行过滤。
# 类型:String
# 必选:否
#
tagKey
# 按照【标签键】进行过滤。
# 类型:String
# 必选:否
#
tag:tagKey
# 按照【标签键值对】进行过滤。tagKey使用具体的标签键进行替换。
# 类型:String
# 必选:否
# 每次请求的Filters的上限为10,Filter.Values的上限为5。
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0
# @type Offset: Integer
# @param Limit: 分页单页的限制数目,默认值为20,最大值100
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeLogsets返回参数结构体
class DescribeLogsetsResponse < TencentCloud::Common::AbstractModel
# @param TotalCount: 分页的总数目
# @type TotalCount: Integer
# @param Logsets: 日志集列表
# @type Logsets: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TotalCount, :Logsets, :RequestId
def initialize(totalcount=nil, logsets=nil, requestid=nil)
@TotalCount = totalcount
@Logsets = logsets
@RequestId = requestid
end
def deserialize(params)
@TotalCount = params['TotalCount']
unless params['Logsets'].nil?
@Logsets = []
params['Logsets'].each do |i|
logsetinfo_tmp = LogsetInfo.new
logsetinfo_tmp.deserialize(i)
@Logsets << logsetinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeMachineGroupConfigs请求参数结构体
class DescribeMachineGroupConfigsRequest < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
attr_accessor :GroupId
def initialize(groupid=nil)
@GroupId = groupid
end
def deserialize(params)
@GroupId = params['GroupId']
end
end
# DescribeMachineGroupConfigs返回参数结构体
class DescribeMachineGroupConfigsResponse < TencentCloud::Common::AbstractModel
# @param Configs: 采集规则配置列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Configs: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Configs, :RequestId
def initialize(configs=nil, requestid=nil)
@Configs = configs
@RequestId = requestid
end
def deserialize(params)
unless params['Configs'].nil?
@Configs = []
params['Configs'].each do |i|
configinfo_tmp = ConfigInfo.new
configinfo_tmp.deserialize(i)
@Configs << configinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeMachineGroups请求参数结构体
class DescribeMachineGroupsRequest < TencentCloud::Common::AbstractModel
# @param Filters:
machineGroupName
# 按照【机器组名称】进行过滤。
# 类型:String
# 必选:否
#
machineGroupId
# 按照【机器组ID】进行过滤。
# 类型:String
# 必选:否
#
tagKey
# 按照【标签键】进行过滤。
# 类型:String
# 必选:否
#
tag:tagKey
# 按照【标签键值对】进行过滤。tagKey使用具体的标签键进行替换。
# 类型:String
# 必选:否
# 每次请求的Filters的上限为10,Filter.Values的上限为5。
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0
# @type Offset: Integer
# @param Limit: 分页单页的限制数目,默认值为20,最大值100
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeMachineGroups返回参数结构体
class DescribeMachineGroupsResponse < TencentCloud::Common::AbstractModel
# @param MachineGroups: 机器组信息列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MachineGroups: Array
# @param TotalCount: 分页的总数目
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :MachineGroups, :TotalCount, :RequestId
def initialize(machinegroups=nil, totalcount=nil, requestid=nil)
@MachineGroups = machinegroups
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['MachineGroups'].nil?
@MachineGroups = []
params['MachineGroups'].each do |i|
machinegroupinfo_tmp = MachineGroupInfo.new
machinegroupinfo_tmp.deserialize(i)
@MachineGroups << machinegroupinfo_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeMachines请求参数结构体
class DescribeMachinesRequest < TencentCloud::Common::AbstractModel
# @param GroupId: 查询的机器组ID
# @type GroupId: String
attr_accessor :GroupId
def initialize(groupid=nil)
@GroupId = groupid
end
def deserialize(params)
@GroupId = params['GroupId']
end
end
# DescribeMachines返回参数结构体
class DescribeMachinesResponse < TencentCloud::Common::AbstractModel
# @param Machines: 机器状态信息组
# @type Machines: Array
# @param AutoUpdate: 机器组是否开启自动升级功能
# @type AutoUpdate: Integer
# @param UpdateStartTime: 机器组自动升级功能预设开始时间
# @type UpdateStartTime: String
# @param UpdateEndTime: 机器组自动升级功能预设结束时间
# @type UpdateEndTime: String
# @param LatestAgentVersion: 当前用户可用最新的Loglistener版本
# @type LatestAgentVersion: String
# @param ServiceLogging: 是否开启服务日志
# @type ServiceLogging: Boolean
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Machines, :AutoUpdate, :UpdateStartTime, :UpdateEndTime, :LatestAgentVersion, :ServiceLogging, :RequestId
def initialize(machines=nil, autoupdate=nil, updatestarttime=nil, updateendtime=nil, latestagentversion=nil, servicelogging=nil, requestid=nil)
@Machines = machines
@AutoUpdate = autoupdate
@UpdateStartTime = updatestarttime
@UpdateEndTime = updateendtime
@LatestAgentVersion = latestagentversion
@ServiceLogging = servicelogging
@RequestId = requestid
end
def deserialize(params)
unless params['Machines'].nil?
@Machines = []
params['Machines'].each do |i|
machineinfo_tmp = MachineInfo.new
machineinfo_tmp.deserialize(i)
@Machines << machineinfo_tmp
end
end
@AutoUpdate = params['AutoUpdate']
@UpdateStartTime = params['UpdateStartTime']
@UpdateEndTime = params['UpdateEndTime']
@LatestAgentVersion = params['LatestAgentVersion']
@ServiceLogging = params['ServiceLogging']
@RequestId = params['RequestId']
end
end
# DescribePartitions请求参数结构体
class DescribePartitionsRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
attr_accessor :TopicId
def initialize(topicid=nil)
@TopicId = topicid
end
def deserialize(params)
@TopicId = params['TopicId']
end
end
# DescribePartitions返回参数结构体
class DescribePartitionsResponse < TencentCloud::Common::AbstractModel
# @param Partitions: 分区列表
# @type Partitions: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Partitions, :RequestId
def initialize(partitions=nil, requestid=nil)
@Partitions = partitions
@RequestId = requestid
end
def deserialize(params)
unless params['Partitions'].nil?
@Partitions = []
params['Partitions'].each do |i|
partitioninfo_tmp = PartitionInfo.new
partitioninfo_tmp.deserialize(i)
@Partitions << partitioninfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeShipperTasks请求参数结构体
class DescribeShipperTasksRequest < TencentCloud::Common::AbstractModel
# @param ShipperId: 投递规则ID
# @type ShipperId: String
# @param StartTime: 查询的开始时间戳,支持最近3天的查询, 毫秒
# @type StartTime: Integer
# @param EndTime: 查询的结束时间戳, 毫秒
# @type EndTime: Integer
attr_accessor :ShipperId, :StartTime, :EndTime
def initialize(shipperid=nil, starttime=nil, endtime=nil)
@ShipperId = shipperid
@StartTime = starttime
@EndTime = endtime
end
def deserialize(params)
@ShipperId = params['ShipperId']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
end
end
# DescribeShipperTasks返回参数结构体
class DescribeShipperTasksResponse < TencentCloud::Common::AbstractModel
# @param Tasks: 投递任务列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tasks: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Tasks, :RequestId
def initialize(tasks=nil, requestid=nil)
@Tasks = tasks
@RequestId = requestid
end
def deserialize(params)
unless params['Tasks'].nil?
@Tasks = []
params['Tasks'].each do |i|
shippertaskinfo_tmp = ShipperTaskInfo.new
shippertaskinfo_tmp.deserialize(i)
@Tasks << shippertaskinfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# DescribeShippers请求参数结构体
class DescribeShippersRequest < TencentCloud::Common::AbstractModel
# @param Filters:
shipperName
# 按照【投递规则名称】进行过滤。
# 类型:String
# 必选:否
#
shipperId
# 按照【投递规则ID】进行过滤。
# 类型:String
# 必选:否
#
topicId
# 按照【日志主题】进行过滤。
# 类型:String
# 必选:否
# 每次请求的Filters的上限为10,Filter.Values的上限为5。
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0
# @type Offset: Integer
# @param Limit: 分页单页的限制数目,默认值为20,最大值100
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeShippers返回参数结构体
class DescribeShippersResponse < TencentCloud::Common::AbstractModel
# @param Shippers: 投递规则列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Shippers: Array
# @param TotalCount: 本次查询获取到的总数
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Shippers, :TotalCount, :RequestId
def initialize(shippers=nil, totalcount=nil, requestid=nil)
@Shippers = shippers
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['Shippers'].nil?
@Shippers = []
params['Shippers'].each do |i|
shipperinfo_tmp = ShipperInfo.new
shipperinfo_tmp.deserialize(i)
@Shippers << shipperinfo_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# DescribeTopics请求参数结构体
class DescribeTopicsRequest < TencentCloud::Common::AbstractModel
# @param Filters:
topicName按照【日志主题名称】进行过滤。类型:String必选:否
logsetName按照【日志集名称】进行过滤。类型:String必选:否
topicId按照【日志主题ID】进行过滤。类型:String必选:否
logsetId按照【日志集ID】进行过滤,可通过调用DescribeLogsets查询已创建的日志集列表或登录控制台进行查看;也可以调用CreateLogset创建新的日志集。类型:String必选:否
tagKey按照【标签键】进行过滤。类型:String必选:否
tag:tagKey按照【标签键值对】进行过滤。tagKey使用具体的标签键进行替换,例如tag:exampleKey。类型:String必选:否
storageType按照【日志主题的存储类型】进行过滤。可选值 hot(标准存储),cold(低频存储)类型:String必选:否每次请求的Filters的上限为10,Filter.Values的上限为100。
# @type Filters: Array
# @param Offset: 分页的偏移量,默认值为0。
# @type Offset: Integer
# @param Limit: 分页单页限制数目,默认值为20,最大值100。
# @type Limit: Integer
attr_accessor :Filters, :Offset, :Limit
def initialize(filters=nil, offset=nil, limit=nil)
@Filters = filters
@Offset = offset
@Limit = limit
end
def deserialize(params)
unless params['Filters'].nil?
@Filters = []
params['Filters'].each do |i|
filter_tmp = Filter.new
filter_tmp.deserialize(i)
@Filters << filter_tmp
end
end
@Offset = params['Offset']
@Limit = params['Limit']
end
end
# DescribeTopics返回参数结构体
class DescribeTopicsResponse < TencentCloud::Common::AbstractModel
# @param Topics: 日志主题列表
# @type Topics: Array
# @param TotalCount: 总数目
# @type TotalCount: Integer
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Topics, :TotalCount, :RequestId
def initialize(topics=nil, totalcount=nil, requestid=nil)
@Topics = topics
@TotalCount = totalcount
@RequestId = requestid
end
def deserialize(params)
unless params['Topics'].nil?
@Topics = []
params['Topics'].each do |i|
topicinfo_tmp = TopicInfo.new
topicinfo_tmp.deserialize(i)
@Topics << topicinfo_tmp
end
end
@TotalCount = params['TotalCount']
@RequestId = params['RequestId']
end
end
# 黑名单path信息
class ExcludePathInfo < TencentCloud::Common::AbstractModel
# @param Type: 类型,选填File或Path
# @type Type: String
# @param Value: Type对应的具体内容
# @type Value: String
attr_accessor :Type, :Value
def initialize(type=nil, value=nil)
@Type = type
@Value = value
end
def deserialize(params)
@Type = params['Type']
@Value = params['Value']
end
end
# 日志导出信息
class ExportInfo < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param ExportId: 日志导出任务ID
# @type ExportId: String
# @param Query: 日志导出查询语句
# @type Query: String
# @param FileName: 日志导出文件名
# @type FileName: String
# @param FileSize: 日志文件大小
# @type FileSize: Integer
# @param Order: 日志导出时间排序
# @type Order: String
# @param Format: 日志导出格式
# @type Format: String
# @param Count: 日志导出数量
# @type Count: Integer
# @param Status: 日志下载状态。Processing:导出正在进行中,Completed:导出完成,Failed:导出失败,Expired:日志导出已过期(三天有效期), Queuing 排队中
# @type Status: String
# @param From: 日志导出起始时间
# @type From: Integer
# @param To: 日志导出结束时间
# @type To: Integer
# @param CosPath: 日志导出路径
# @type CosPath: String
# @param CreateTime: 日志导出创建时间
# @type CreateTime: String
attr_accessor :TopicId, :ExportId, :Query, :FileName, :FileSize, :Order, :Format, :Count, :Status, :From, :To, :CosPath, :CreateTime
def initialize(topicid=nil, exportid=nil, query=nil, filename=nil, filesize=nil, order=nil, format=nil, count=nil, status=nil, from=nil, to=nil, cospath=nil, createtime=nil)
@TopicId = topicid
@ExportId = exportid
@Query = query
@FileName = filename
@FileSize = filesize
@Order = order
@Format = format
@Count = count
@Status = status
@From = from
@To = to
@CosPath = cospath
@CreateTime = createtime
end
def deserialize(params)
@TopicId = params['TopicId']
@ExportId = params['ExportId']
@Query = params['Query']
@FileName = params['FileName']
@FileSize = params['FileSize']
@Order = params['Order']
@Format = params['Format']
@Count = params['Count']
@Status = params['Status']
@From = params['From']
@To = params['To']
@CosPath = params['CosPath']
@CreateTime = params['CreateTime']
end
end
# 日志提取规则
class ExtractRuleInfo < TencentCloud::Common::AbstractModel
# @param TimeKey: 时间字段的key名字,time_key和time_format必须成对出现
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeKey: String
# @param TimeFormat: 时间字段的格式,参考c语言的strftime函数对于时间的格式说明输出参数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type TimeFormat: String
# @param Delimiter: 分隔符类型日志的分隔符,只有log_type为delimiter_log时有效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Delimiter: String
# @param LogRegex: 整条日志匹配规则,只有log_type为fullregex_log时有效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogRegex: String
# @param BeginRegex: 行首匹配规则,只有log_type为multiline_log或fullregex_log时有效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type BeginRegex: String
# @param Keys: 取的每个字段的key名字,为空的key代表丢弃这个字段,只有log_type为delimiter_log时有效,json_log的日志使用json本身的key
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Keys: Array
# @param FilterKeyRegex: 需要过滤日志的key,及其对应的regex
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FilterKeyRegex: Array
# @param UnMatchUpLoadSwitch: 解析失败日志是否上传,true表示上传,false表示不上传
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UnMatchUpLoadSwitch: Boolean
# @param UnMatchLogKey: 失败日志的key
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UnMatchLogKey: String
# @param Backtracking: 增量采集模式下的回溯数据量,默认-1(全量采集)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Backtracking: Integer
# @param IsGBK: 是否为Gbk编码. 0: 否, 1: 是
# 注意:此字段可能返回 null,表示取不到有效值。
# @type IsGBK: Integer
# @param JsonStandard: 是否为标准json. 0: 否, 1: 是
# 注意:此字段可能返回 null,表示取不到有效值。
# @type JsonStandard: Integer
# @param Protocol: syslog传输协议,取值为tcp或者udp。
# 该字段适用于:创建采集规则配置、修改采集规则配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Protocol: String
# @param Address: syslog系统日志采集指定采集器监听的地址和端口 ,形式:[ip]:[port]。举例:127.0.0.1:9000
# 该字段适用于:创建采集规则配置、修改采集规则配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Address: String
# @param ParseProtocol: rfc3164:指定系统日志采集使用RFC3164协议解析日志。
# rfc5424:指定系统日志采集使用RFC5424协议解析日志。
# auto:自动匹配rfc3164或者rfc5424其中一种协议
# 该字段适用于:创建采集规则配置、修改采集规则配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ParseProtocol: String
attr_accessor :TimeKey, :TimeFormat, :Delimiter, :LogRegex, :BeginRegex, :Keys, :FilterKeyRegex, :UnMatchUpLoadSwitch, :UnMatchLogKey, :Backtracking, :IsGBK, :JsonStandard, :Protocol, :Address, :ParseProtocol
def initialize(timekey=nil, timeformat=nil, delimiter=nil, logregex=nil, beginregex=nil, keys=nil, filterkeyregex=nil, unmatchuploadswitch=nil, unmatchlogkey=nil, backtracking=nil, isgbk=nil, jsonstandard=nil, protocol=nil, address=nil, parseprotocol=nil)
@TimeKey = timekey
@TimeFormat = timeformat
@Delimiter = delimiter
@LogRegex = logregex
@BeginRegex = beginregex
@Keys = keys
@FilterKeyRegex = filterkeyregex
@UnMatchUpLoadSwitch = unmatchuploadswitch
@UnMatchLogKey = unmatchlogkey
@Backtracking = backtracking
@IsGBK = isgbk
@JsonStandard = jsonstandard
@Protocol = protocol
@Address = address
@ParseProtocol = parseprotocol
end
def deserialize(params)
@TimeKey = params['TimeKey']
@TimeFormat = params['TimeFormat']
@Delimiter = params['Delimiter']
@LogRegex = params['LogRegex']
@BeginRegex = params['BeginRegex']
@Keys = params['Keys']
unless params['FilterKeyRegex'].nil?
@FilterKeyRegex = []
params['FilterKeyRegex'].each do |i|
keyregexinfo_tmp = KeyRegexInfo.new
keyregexinfo_tmp.deserialize(i)
@FilterKeyRegex << keyregexinfo_tmp
end
end
@UnMatchUpLoadSwitch = params['UnMatchUpLoadSwitch']
@UnMatchLogKey = params['UnMatchLogKey']
@Backtracking = params['Backtracking']
@IsGBK = params['IsGBK']
@JsonStandard = params['JsonStandard']
@Protocol = params['Protocol']
@Address = params['Address']
@ParseProtocol = params['ParseProtocol']
end
end
# 过滤器
class Filter < TencentCloud::Common::AbstractModel
# @param Key: 需要过滤的字段。
# @type Key: String
# @param Values: 需要过滤的值。
# @type Values: Array
attr_accessor :Key, :Values
def initialize(key=nil, values=nil)
@Key = key
@Values = values
end
def deserialize(params)
@Key = params['Key']
@Values = params['Values']
end
end
# 投递日志的过滤规则
class FilterRuleInfo < TencentCloud::Common::AbstractModel
# @param Key: 过滤规则Key
# @type Key: String
# @param Regex: 过滤规则
# @type Regex: String
# @param Value: 过滤规则Value
# @type Value: String
attr_accessor :Key, :Regex, :Value
def initialize(key=nil, regex=nil, value=nil)
@Key = key
@Regex = regex
@Value = value
end
def deserialize(params)
@Key = params['Key']
@Regex = params['Regex']
@Value = params['Value']
end
end
# 全文索引配置
class FullTextInfo < TencentCloud::Common::AbstractModel
# @param CaseSensitive: 是否大小写敏感
# @type CaseSensitive: Boolean
# @param Tokenizer: 全文索引的分词符,其中的每个字符代表一个分词符;
# 仅支持英文符号、\n\t\r及转义符\;
# 注意:\n\t\r本身已被转义,直接使用双引号包裹即可作为入参,无需再次转义
# @type Tokenizer: String
# @param ContainZH: 是否包含中文
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ContainZH: Boolean
attr_accessor :CaseSensitive, :Tokenizer, :ContainZH
def initialize(casesensitive=nil, tokenizer=nil, containzh=nil)
@CaseSensitive = casesensitive
@Tokenizer = tokenizer
@ContainZH = containzh
end
def deserialize(params)
@CaseSensitive = params['CaseSensitive']
@Tokenizer = params['Tokenizer']
@ContainZH = params['ContainZH']
end
end
# GetAlarmLog请求参数结构体
class GetAlarmLogRequest < TencentCloud::Common::AbstractModel
# @param From: 要查询的日志的起始时间,Unix时间戳,单位ms
# @type From: Integer
# @param To: 要查询的日志的结束时间,Unix时间戳,单位ms
# @type To: Integer
# @param Query: 查询语句,语句长度最大为1024
# @type Query: String
# @param Limit: 单次查询返回的日志条数,最大值为1000
# @type Limit: Integer
# @param Context: 加载更多日志时使用,透传上次返回的Context值,获取后续的日志内容
# @type Context: String
# @param Sort: 日志接口是否按时间排序返回;可选值:asc(升序)、desc(降序),默认为 desc
# @type Sort: String
# @param UseNewAnalysis: 为true代表使用新检索,响应参数AnalysisRecords和Columns有效, 为false时代表使用老检索方式, AnalysisResults和ColNames有效
# @type UseNewAnalysis: Boolean
attr_accessor :From, :To, :Query, :Limit, :Context, :Sort, :UseNewAnalysis
def initialize(from=nil, to=nil, query=nil, limit=nil, context=nil, sort=nil, usenewanalysis=nil)
@From = from
@To = to
@Query = query
@Limit = limit
@Context = context
@Sort = sort
@UseNewAnalysis = usenewanalysis
end
def deserialize(params)
@From = params['From']
@To = params['To']
@Query = params['Query']
@Limit = params['Limit']
@Context = params['Context']
@Sort = params['Sort']
@UseNewAnalysis = params['UseNewAnalysis']
end
end
# GetAlarmLog返回参数结构体
class GetAlarmLogResponse < TencentCloud::Common::AbstractModel
# @param Context: 加载后续内容的Context
# @type Context: String
# @param ListOver: 日志查询结果是否全部返回
# @type ListOver: Boolean
# @param Analysis: 返回的是否为分析结果
# @type Analysis: Boolean
# @param ColNames: 如果Analysis为True,则返回分析结果的列名,否则为空
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ColNames: Array
# @param Results: 日志查询结果;当Analysis为True时,可能返回为null
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Results: Array
# @param AnalysisResults: 日志分析结果;当Analysis为False时,可能返回为null
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AnalysisResults: Array
# @param AnalysisRecords: 新的日志分析结果; UseNewAnalysis为true有效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AnalysisRecords: Array
# @param Columns: 日志分析的列属性; UseNewAnalysis为true有效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Columns: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Context, :ListOver, :Analysis, :ColNames, :Results, :AnalysisResults, :AnalysisRecords, :Columns, :RequestId
def initialize(context=nil, listover=nil, analysis=nil, colnames=nil, results=nil, analysisresults=nil, analysisrecords=nil, columns=nil, requestid=nil)
@Context = context
@ListOver = listover
@Analysis = analysis
@ColNames = colnames
@Results = results
@AnalysisResults = analysisresults
@AnalysisRecords = analysisrecords
@Columns = columns
@RequestId = requestid
end
def deserialize(params)
@Context = params['Context']
@ListOver = params['ListOver']
@Analysis = params['Analysis']
@ColNames = params['ColNames']
unless params['Results'].nil?
@Results = []
params['Results'].each do |i|
loginfo_tmp = LogInfo.new
loginfo_tmp.deserialize(i)
@Results << loginfo_tmp
end
end
unless params['AnalysisResults'].nil?
@AnalysisResults = []
params['AnalysisResults'].each do |i|
logitems_tmp = LogItems.new
logitems_tmp.deserialize(i)
@AnalysisResults << logitems_tmp
end
end
@AnalysisRecords = params['AnalysisRecords']
unless params['Columns'].nil?
@Columns = []
params['Columns'].each do |i|
column_tmp = Column.new
column_tmp.deserialize(i)
@Columns << column_tmp
end
end
@RequestId = params['RequestId']
end
end
# 直方图详细信息
class HistogramInfo < TencentCloud::Common::AbstractModel
# @param Count: 统计周期内的日志条数
# @type Count: Integer
# @param BTime: 按 period 取整后的 unix timestamp: 单位毫秒
# @type BTime: Integer
attr_accessor :Count, :BTime
def initialize(count=nil, btime=nil)
@Count = count
@BTime = btime
end
def deserialize(params)
@Count = params['Count']
@BTime = params['BTime']
end
end
# 自建k8s-节点文件配置信息
class HostFileInfo < TencentCloud::Common::AbstractModel
# @param LogPath: 日志文件夹
# @type LogPath: String
# @param FilePattern: 日志文件名
# @type FilePattern: String
# @param CustomLabels: metadata信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type CustomLabels: Array
attr_accessor :LogPath, :FilePattern, :CustomLabels
def initialize(logpath=nil, filepattern=nil, customlabels=nil)
@LogPath = logpath
@FilePattern = filepattern
@CustomLabels = customlabels
end
def deserialize(params)
@LogPath = params['LogPath']
@FilePattern = params['FilePattern']
@CustomLabels = params['CustomLabels']
end
end
# JSON类型描述
class JsonInfo < TencentCloud::Common::AbstractModel
# @param EnableTag: 启用标志
# @type EnableTag: Boolean
# @param MetaFields: 元数据信息列表, 可选值为 __SOURCE__、__FILENAME__、__TIMESTAMP__、__HOSTNAME__。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MetaFields: Array
attr_accessor :EnableTag, :MetaFields
def initialize(enabletag=nil, metafields=nil)
@EnableTag = enabletag
@MetaFields = metafields
end
def deserialize(params)
@EnableTag = params['EnableTag']
@MetaFields = params['MetaFields']
end
end
# 需要过滤日志的key,及其对应的regex
class KeyRegexInfo < TencentCloud::Common::AbstractModel
# @param Key: 需要过滤日志的key
# @type Key: String
# @param Regex: key对应的过滤规则regex
# @type Regex: String
attr_accessor :Key, :Regex
def initialize(key=nil, regex=nil)
@Key = key
@Regex = regex
end
def deserialize(params)
@Key = params['Key']
@Regex = params['Regex']
end
end
# 键值或者元字段索引的字段信息
class KeyValueInfo < TencentCloud::Common::AbstractModel
# @param Key: 需要配置键值或者元字段索引的字段,元字段Key无需额外添加`__TAG__.`前缀,与上传日志时对应的字段Key一致即可,腾讯云控制台展示时将自动添加`__TAG__.`前缀
# @type Key: String
# @param Value: 字段的索引描述信息
# @type Value: :class:`Tencentcloud::Cls.v20201016.models.ValueInfo`
attr_accessor :Key, :Value
def initialize(key=nil, value=nil)
@Key = key
@Value = value
end
def deserialize(params)
@Key = params['Key']
unless params['Value'].nil?
@Value = ValueInfo.new
@Value.deserialize(params['Value'])
end
end
end
# 日志上下文信息
class LogContextInfo < TencentCloud::Common::AbstractModel
# @param Source: 日志来源设备
# @type Source: String
# @param Filename: 采集路径
# @type Filename: String
# @param Content: 日志内容
# @type Content: String
# @param PkgId: 日志包序号
# @type PkgId: String
# @param PkgLogId: 日志包内一条日志的序号
# @type PkgLogId: Integer
# @param BTime: 日志时间戳
# @type BTime: Integer
# @param HostName: 日志来源主机名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HostName: String
attr_accessor :Source, :Filename, :Content, :PkgId, :PkgLogId, :BTime, :HostName
def initialize(source=nil, filename=nil, content=nil, pkgid=nil, pkglogid=nil, btime=nil, hostname=nil)
@Source = source
@Filename = filename
@Content = content
@PkgId = pkgid
@PkgLogId = pkglogid
@BTime = btime
@HostName = hostname
end
def deserialize(params)
@Source = params['Source']
@Filename = params['Filename']
@Content = params['Content']
@PkgId = params['PkgId']
@PkgLogId = params['PkgLogId']
@BTime = params['BTime']
@HostName = params['HostName']
end
end
# 日志结果信息
class LogInfo < TencentCloud::Common::AbstractModel
# @param Time: 日志时间,单位ms
# @type Time: Integer
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param TopicName: 日志主题名称
# @type TopicName: String
# @param Source: 日志来源IP
# @type Source: String
# @param FileName: 日志文件名称
# @type FileName: String
# @param PkgId: 日志上报请求包的ID
# @type PkgId: String
# @param PkgLogId: 请求包内日志的ID
# @type PkgLogId: String
# @param LogJson: 日志内容的Json序列化字符串
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LogJson: String
# @param HostName: 日志来源主机名称
# 注意:此字段可能返回 null,表示取不到有效值。
# @type HostName: String
attr_accessor :Time, :TopicId, :TopicName, :Source, :FileName, :PkgId, :PkgLogId, :LogJson, :HostName
def initialize(time=nil, topicid=nil, topicname=nil, source=nil, filename=nil, pkgid=nil, pkglogid=nil, logjson=nil, hostname=nil)
@Time = time
@TopicId = topicid
@TopicName = topicname
@Source = source
@FileName = filename
@PkgId = pkgid
@PkgLogId = pkglogid
@LogJson = logjson
@HostName = hostname
end
def deserialize(params)
@Time = params['Time']
@TopicId = params['TopicId']
@TopicName = params['TopicName']
@Source = params['Source']
@FileName = params['FileName']
@PkgId = params['PkgId']
@PkgLogId = params['PkgLogId']
@LogJson = params['LogJson']
@HostName = params['HostName']
end
end
# 日志中的KV对
class LogItem < TencentCloud::Common::AbstractModel
# @param Key: 日志Key
# @type Key: String
# @param Value: 日志Value
# @type Value: String
attr_accessor :Key, :Value
def initialize(key=nil, value=nil)
@Key = key
@Value = value
end
def deserialize(params)
@Key = params['Key']
@Value = params['Value']
end
end
# LogItem的数组
class LogItems < TencentCloud::Common::AbstractModel
# @param Data: 分析结果返回的KV数据对
# @type Data: Array
attr_accessor :Data
def initialize(data=nil)
@Data = data
end
def deserialize(params)
unless params['Data'].nil?
@Data = []
params['Data'].each do |i|
logitem_tmp = LogItem.new
logitem_tmp.deserialize(i)
@Data << logitem_tmp
end
end
end
end
# 日志集相关信息
class LogsetInfo < TencentCloud::Common::AbstractModel
# @param LogsetId: 日志集ID
# @type LogsetId: String
# @param LogsetName: 日志集名称
# @type LogsetName: String
# @param CreateTime: 创建时间
# @type CreateTime: String
# @param AssumerName: 云产品标识,日志集由其它云产品创建时,该字段会显示云产品名称,例如CDN、TKE
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AssumerName: String
# @param Tags: 日志集绑定的标签
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param TopicCount: 日志集下日志主题的数目
# @type TopicCount: Integer
# @param RoleName: 若AssumerName非空,则表示创建该日志集的服务方角色
# @type RoleName: String
attr_accessor :LogsetId, :LogsetName, :CreateTime, :AssumerName, :Tags, :TopicCount, :RoleName
def initialize(logsetid=nil, logsetname=nil, createtime=nil, assumername=nil, tags=nil, topiccount=nil, rolename=nil)
@LogsetId = logsetid
@LogsetName = logsetname
@CreateTime = createtime
@AssumerName = assumername
@Tags = tags
@TopicCount = topiccount
@RoleName = rolename
end
def deserialize(params)
@LogsetId = params['LogsetId']
@LogsetName = params['LogsetName']
@CreateTime = params['CreateTime']
@AssumerName = params['AssumerName']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@TopicCount = params['TopicCount']
@RoleName = params['RoleName']
end
end
# 机器组信息
class MachineGroupInfo < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
# @param GroupName: 机器组名称
# @type GroupName: String
# @param MachineGroupType: 机器组类型
# @type MachineGroupType: :class:`Tencentcloud::Cls.v20201016.models.MachineGroupTypeInfo`
# @param CreateTime: 创建时间
# @type CreateTime: String
# @param Tags: 机器组绑定的标签列表
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param AutoUpdate: 是否开启机器组自动更新
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AutoUpdate: String
# @param UpdateStartTime: 升级开始时间,建议业务低峰期升级LogListener
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UpdateStartTime: String
# @param UpdateEndTime: 升级结束时间,建议业务低峰期升级LogListener
# 注意:此字段可能返回 null,表示取不到有效值。
# @type UpdateEndTime: String
# @param ServiceLogging: 是否开启服务日志,用于记录因Loglistener 服务自身产生的log,开启后,会创建内部日志集cls_service_logging和日志主题loglistener_status,loglistener_alarm,loglistener_business,不产生计费
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ServiceLogging: Boolean
attr_accessor :GroupId, :GroupName, :MachineGroupType, :CreateTime, :Tags, :AutoUpdate, :UpdateStartTime, :UpdateEndTime, :ServiceLogging
def initialize(groupid=nil, groupname=nil, machinegrouptype=nil, createtime=nil, tags=nil, autoupdate=nil, updatestarttime=nil, updateendtime=nil, servicelogging=nil)
@GroupId = groupid
@GroupName = groupname
@MachineGroupType = machinegrouptype
@CreateTime = createtime
@Tags = tags
@AutoUpdate = autoupdate
@UpdateStartTime = updatestarttime
@UpdateEndTime = updateendtime
@ServiceLogging = servicelogging
end
def deserialize(params)
@GroupId = params['GroupId']
@GroupName = params['GroupName']
unless params['MachineGroupType'].nil?
@MachineGroupType = MachineGroupTypeInfo.new
@MachineGroupType.deserialize(params['MachineGroupType'])
end
@CreateTime = params['CreateTime']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@AutoUpdate = params['AutoUpdate']
@UpdateStartTime = params['UpdateStartTime']
@UpdateEndTime = params['UpdateEndTime']
@ServiceLogging = params['ServiceLogging']
end
end
# 机器组类型描述
class MachineGroupTypeInfo < TencentCloud::Common::AbstractModel
# @param Type: 机器组类型,ip表示该机器组Values中存的是采集机器的IP地址,label表示该机器组Values中存储的是机器的标签
# @type Type: String
# @param Values: 机器描述列表
# @type Values: Array
attr_accessor :Type, :Values
def initialize(type=nil, values=nil)
@Type = type
@Values = values
end
def deserialize(params)
@Type = params['Type']
@Values = params['Values']
end
end
# 机器状态信息
class MachineInfo < TencentCloud::Common::AbstractModel
# @param Ip: 机器的IP
# @type Ip: String
# @param Status: 机器状态,0:异常,1:正常
# @type Status: Integer
# @param OfflineTime: 机器离线时间,空为正常,异常返回具体时间
# @type OfflineTime: String
# @param AutoUpdate: 机器是否开启自动升级。0:关闭,1:开启
# @type AutoUpdate: Integer
# @param Version: 机器当前版本号。
# @type Version: String
# @param UpdateStatus: 机器升级功能状态。
# @type UpdateStatus: Integer
# @param ErrCode: 机器升级结果标识。
# @type ErrCode: Integer
# @param ErrMsg: 机器升级结果信息。
# @type ErrMsg: String
attr_accessor :Ip, :Status, :OfflineTime, :AutoUpdate, :Version, :UpdateStatus, :ErrCode, :ErrMsg
def initialize(ip=nil, status=nil, offlinetime=nil, autoupdate=nil, version=nil, updatestatus=nil, errcode=nil, errmsg=nil)
@Ip = ip
@Status = status
@OfflineTime = offlinetime
@AutoUpdate = autoupdate
@Version = version
@UpdateStatus = updatestatus
@ErrCode = errcode
@ErrMsg = errmsg
end
def deserialize(params)
@Ip = params['Ip']
@Status = params['Status']
@OfflineTime = params['OfflineTime']
@AutoUpdate = params['AutoUpdate']
@Version = params['Version']
@UpdateStatus = params['UpdateStatus']
@ErrCode = params['ErrCode']
@ErrMsg = params['ErrMsg']
end
end
# MergePartition请求参数结构体
class MergePartitionRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param PartitionId: 合并的PartitionId
# @type PartitionId: Integer
attr_accessor :TopicId, :PartitionId
def initialize(topicid=nil, partitionid=nil)
@TopicId = topicid
@PartitionId = partitionid
end
def deserialize(params)
@TopicId = params['TopicId']
@PartitionId = params['PartitionId']
end
end
# MergePartition返回参数结构体
class MergePartitionResponse < TencentCloud::Common::AbstractModel
# @param Partitions: 合并结果集
# @type Partitions: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Partitions, :RequestId
def initialize(partitions=nil, requestid=nil)
@Partitions = partitions
@RequestId = requestid
end
def deserialize(params)
unless params['Partitions'].nil?
@Partitions = []
params['Partitions'].each do |i|
partitioninfo_tmp = PartitionInfo.new
partitioninfo_tmp.deserialize(i)
@Partitions << partitioninfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# ModifyAlarmNotice请求参数结构体
class ModifyAlarmNoticeRequest < TencentCloud::Common::AbstractModel
# @param AlarmNoticeId: 通知渠道组ID。
# @type AlarmNoticeId: String
# @param Name: 通知渠道组名称。
# @type Name: String
# @param Type: 通知类型。可选值:
# Trigger - 告警触发
# Recovery - 告警恢复
# All - 告警触发和告警恢复
# @type Type: String
# @param NoticeReceivers: 通知接收对象。
# @type NoticeReceivers: Array
# @param WebCallbacks: 接口回调信息(包括企业微信)。
# @type WebCallbacks: Array
attr_accessor :AlarmNoticeId, :Name, :Type, :NoticeReceivers, :WebCallbacks
def initialize(alarmnoticeid=nil, name=nil, type=nil, noticereceivers=nil, webcallbacks=nil)
@AlarmNoticeId = alarmnoticeid
@Name = name
@Type = type
@NoticeReceivers = noticereceivers
@WebCallbacks = webcallbacks
end
def deserialize(params)
@AlarmNoticeId = params['AlarmNoticeId']
@Name = params['Name']
@Type = params['Type']
unless params['NoticeReceivers'].nil?
@NoticeReceivers = []
params['NoticeReceivers'].each do |i|
noticereceiver_tmp = NoticeReceiver.new
noticereceiver_tmp.deserialize(i)
@NoticeReceivers << noticereceiver_tmp
end
end
unless params['WebCallbacks'].nil?
@WebCallbacks = []
params['WebCallbacks'].each do |i|
webcallback_tmp = WebCallback.new
webcallback_tmp.deserialize(i)
@WebCallbacks << webcallback_tmp
end
end
end
end
# ModifyAlarmNotice返回参数结构体
class ModifyAlarmNoticeResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyAlarm请求参数结构体
class ModifyAlarmRequest < TencentCloud::Common::AbstractModel
# @param AlarmId: 告警策略ID。
# @type AlarmId: String
# @param Name: 告警策略名称
# @type Name: String
# @param MonitorTime: 监控任务运行时间点。
# @type MonitorTime: :class:`Tencentcloud::Cls.v20201016.models.MonitorTime`
# @param Condition: 触发条件。
# @type Condition: String
# @param TriggerCount: 持续周期。持续满足触发条件TriggerCount个周期后,再进行告警;最小值为1,最大值为10。
# @type TriggerCount: Integer
# @param AlarmPeriod: 告警重复的周期。单位是分钟。取值范围是0~1440。
# @type AlarmPeriod: Integer
# @param AlarmNoticeIds: 关联的告警通知模板列表。
# @type AlarmNoticeIds: Array
# @param AlarmTargets: 监控对象列表。
# @type AlarmTargets: Array
# @param Status: 是否开启告警策略。
# @type Status: Boolean
# @param MessageTemplate: 用户自定义告警内容
# @type MessageTemplate: String
# @param CallBack: 用户自定义回调
# @type CallBack: :class:`Tencentcloud::Cls.v20201016.models.CallBackInfo`
# @param Analysis: 多维分析
# @type Analysis: Array
attr_accessor :AlarmId, :Name, :MonitorTime, :Condition, :TriggerCount, :AlarmPeriod, :AlarmNoticeIds, :AlarmTargets, :Status, :MessageTemplate, :CallBack, :Analysis
def initialize(alarmid=nil, name=nil, monitortime=nil, condition=nil, triggercount=nil, alarmperiod=nil, alarmnoticeids=nil, alarmtargets=nil, status=nil, messagetemplate=nil, callback=nil, analysis=nil)
@AlarmId = alarmid
@Name = name
@MonitorTime = monitortime
@Condition = condition
@TriggerCount = triggercount
@AlarmPeriod = alarmperiod
@AlarmNoticeIds = alarmnoticeids
@AlarmTargets = alarmtargets
@Status = status
@MessageTemplate = messagetemplate
@CallBack = callback
@Analysis = analysis
end
def deserialize(params)
@AlarmId = params['AlarmId']
@Name = params['Name']
unless params['MonitorTime'].nil?
@MonitorTime = MonitorTime.new
@MonitorTime.deserialize(params['MonitorTime'])
end
@Condition = params['Condition']
@TriggerCount = params['TriggerCount']
@AlarmPeriod = params['AlarmPeriod']
@AlarmNoticeIds = params['AlarmNoticeIds']
unless params['AlarmTargets'].nil?
@AlarmTargets = []
params['AlarmTargets'].each do |i|
alarmtarget_tmp = AlarmTarget.new
alarmtarget_tmp.deserialize(i)
@AlarmTargets << alarmtarget_tmp
end
end
@Status = params['Status']
@MessageTemplate = params['MessageTemplate']
unless params['CallBack'].nil?
@CallBack = CallBackInfo.new
@CallBack.deserialize(params['CallBack'])
end
unless params['Analysis'].nil?
@Analysis = []
params['Analysis'].each do |i|
analysisdimensional_tmp = AnalysisDimensional.new
analysisdimensional_tmp.deserialize(i)
@Analysis << analysisdimensional_tmp
end
end
end
end
# ModifyAlarm返回参数结构体
class ModifyAlarmResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyConfigExtra请求参数结构体
class ModifyConfigExtraRequest < TencentCloud::Common::AbstractModel
# @param ConfigExtraId: 采集配置扩展信息id
# @type ConfigExtraId: String
# @param Name: 采集配置规程名称,最长63个字符,只能包含小写字符、数字及分隔符(“-”),且必须以小写字符开头,数字或小写字符结尾
# @type Name: String
# @param TopicId: 日志主题id
# @type TopicId: String
# @param HostFile: 节点文件配置信息
# @type HostFile: :class:`Tencentcloud::Cls.v20201016.models.HostFileInfo`
# @param ContainerFile: 容器文件路径信息
# @type ContainerFile: :class:`Tencentcloud::Cls.v20201016.models.ContainerFileInfo`
# @param ContainerStdout: 容器标准输出信息
# @type ContainerStdout: :class:`Tencentcloud::Cls.v20201016.models.ContainerStdoutInfo`
# @param LogType: 采集的日志类型,json_log代表json格式日志,delimiter_log代表分隔符格式日志,minimalist_log代表极简日志,multiline_log代表多行日志,fullregex_log代表完整正则,默认为minimalist_log
# @type LogType: String
# @param LogFormat: 日志格式化方式
# @type LogFormat: String
# @param ExtractRule: 提取规则,如果设置了ExtractRule,则必须设置LogType
# @type ExtractRule: :class:`Tencentcloud::Cls.v20201016.models.ExtractRuleInfo`
# @param ExcludePaths: 采集黑名单路径列表
# @type ExcludePaths: Array
# @param UserDefineRule: 用户自定义采集规则,Json格式序列化的字符串
# @type UserDefineRule: String
# @param Type: 类型:container_stdout、container_file、host_file
# @type Type: String
# @param GroupId: 机器组ID
# @type GroupId: String
# @param ConfigFlag: 自建采集配置标
# @type ConfigFlag: String
# @param LogsetId: 日志集ID
# @type LogsetId: String
# @param LogsetName: 日志集name
# @type LogsetName: String
# @param TopicName: 日志主题name
# @type TopicName: String
attr_accessor :ConfigExtraId, :Name, :TopicId, :HostFile, :ContainerFile, :ContainerStdout, :LogType, :LogFormat, :ExtractRule, :ExcludePaths, :UserDefineRule, :Type, :GroupId, :ConfigFlag, :LogsetId, :LogsetName, :TopicName
def initialize(configextraid=nil, name=nil, topicid=nil, hostfile=nil, containerfile=nil, containerstdout=nil, logtype=nil, logformat=nil, extractrule=nil, excludepaths=nil, userdefinerule=nil, type=nil, groupid=nil, configflag=nil, logsetid=nil, logsetname=nil, topicname=nil)
@ConfigExtraId = configextraid
@Name = name
@TopicId = topicid
@HostFile = hostfile
@ContainerFile = containerfile
@ContainerStdout = containerstdout
@LogType = logtype
@LogFormat = logformat
@ExtractRule = extractrule
@ExcludePaths = excludepaths
@UserDefineRule = userdefinerule
@Type = type
@GroupId = groupid
@ConfigFlag = configflag
@LogsetId = logsetid
@LogsetName = logsetname
@TopicName = topicname
end
def deserialize(params)
@ConfigExtraId = params['ConfigExtraId']
@Name = params['Name']
@TopicId = params['TopicId']
unless params['HostFile'].nil?
@HostFile = HostFileInfo.new
@HostFile.deserialize(params['HostFile'])
end
unless params['ContainerFile'].nil?
@ContainerFile = ContainerFileInfo.new
@ContainerFile.deserialize(params['ContainerFile'])
end
unless params['ContainerStdout'].nil?
@ContainerStdout = ContainerStdoutInfo.new
@ContainerStdout.deserialize(params['ContainerStdout'])
end
@LogType = params['LogType']
@LogFormat = params['LogFormat']
unless params['ExtractRule'].nil?
@ExtractRule = ExtractRuleInfo.new
@ExtractRule.deserialize(params['ExtractRule'])
end
unless params['ExcludePaths'].nil?
@ExcludePaths = []
params['ExcludePaths'].each do |i|
excludepathinfo_tmp = ExcludePathInfo.new
excludepathinfo_tmp.deserialize(i)
@ExcludePaths << excludepathinfo_tmp
end
end
@UserDefineRule = params['UserDefineRule']
@Type = params['Type']
@GroupId = params['GroupId']
@ConfigFlag = params['ConfigFlag']
@LogsetId = params['LogsetId']
@LogsetName = params['LogsetName']
@TopicName = params['TopicName']
end
end
# ModifyConfigExtra返回参数结构体
class ModifyConfigExtraResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyConfig请求参数结构体
class ModifyConfigRequest < TencentCloud::Common::AbstractModel
# @param ConfigId: 采集规则配置ID
# @type ConfigId: String
# @param Name: 采集规则配置名称
# @type Name: String
# @param Path: 日志采集路径,包含文件名
# @type Path: String
# @param LogType: 采集的日志类型,json_log代表json格式日志,delimiter_log代表分隔符格式日志,minimalist_log代表极简日志,multiline_log代表多行日志,fullregex_log代表完整正则,默认为minimalist_log
# @type LogType: String
# @param ExtractRule: 提取规则,如果设置了ExtractRule,则必须设置LogType
# @type ExtractRule: :class:`Tencentcloud::Cls.v20201016.models.ExtractRuleInfo`
# @param ExcludePaths: 采集黑名单路径列表
# @type ExcludePaths: Array
# @param Output: 采集配置关联的日志主题(TopicId)
# @type Output: String
# @param UserDefineRule: 用户自定义解析字符串,Json格式序列化的字符串
# @type UserDefineRule: String
attr_accessor :ConfigId, :Name, :Path, :LogType, :ExtractRule, :ExcludePaths, :Output, :UserDefineRule
def initialize(configid=nil, name=nil, path=nil, logtype=nil, extractrule=nil, excludepaths=nil, output=nil, userdefinerule=nil)
@ConfigId = configid
@Name = name
@Path = path
@LogType = logtype
@ExtractRule = extractrule
@ExcludePaths = excludepaths
@Output = output
@UserDefineRule = userdefinerule
end
def deserialize(params)
@ConfigId = params['ConfigId']
@Name = params['Name']
@Path = params['Path']
@LogType = params['LogType']
unless params['ExtractRule'].nil?
@ExtractRule = ExtractRuleInfo.new
@ExtractRule.deserialize(params['ExtractRule'])
end
unless params['ExcludePaths'].nil?
@ExcludePaths = []
params['ExcludePaths'].each do |i|
excludepathinfo_tmp = ExcludePathInfo.new
excludepathinfo_tmp.deserialize(i)
@ExcludePaths << excludepathinfo_tmp
end
end
@Output = params['Output']
@UserDefineRule = params['UserDefineRule']
end
end
# ModifyConfig返回参数结构体
class ModifyConfigResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyConsumer请求参数结构体
class ModifyConsumerRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 投递任务绑定的日志主题 ID
# @type TopicId: String
# @param Effective: 投递任务是否生效,默认不生效
# @type Effective: Boolean
# @param NeedContent: 是否投递日志的元数据信息,默认为 false
# @type NeedContent: Boolean
# @param Content: 如果需要投递元数据信息,元数据信息的描述
# @type Content: :class:`Tencentcloud::Cls.v20201016.models.ConsumerContent`
# @param Ckafka: CKafka的描述
# @type Ckafka: :class:`Tencentcloud::Cls.v20201016.models.Ckafka`
# @param Compression: 投递时压缩方式,取值0,2,3。[0:NONE;2:SNAPPY;3:LZ4]
# @type Compression: Integer
attr_accessor :TopicId, :Effective, :NeedContent, :Content, :Ckafka, :Compression
def initialize(topicid=nil, effective=nil, needcontent=nil, content=nil, ckafka=nil, compression=nil)
@TopicId = topicid
@Effective = effective
@NeedContent = needcontent
@Content = content
@Ckafka = ckafka
@Compression = compression
end
def deserialize(params)
@TopicId = params['TopicId']
@Effective = params['Effective']
@NeedContent = params['NeedContent']
unless params['Content'].nil?
@Content = ConsumerContent.new
@Content.deserialize(params['Content'])
end
unless params['Ckafka'].nil?
@Ckafka = Ckafka.new
@Ckafka.deserialize(params['Ckafka'])
end
@Compression = params['Compression']
end
end
# ModifyConsumer返回参数结构体
class ModifyConsumerResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyIndex请求参数结构体
class ModifyIndexRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param Status: 默认不生效
# @type Status: Boolean
# @param Rule: 索引规则
# @type Rule: :class:`Tencentcloud::Cls.v20201016.models.RuleInfo`
# @param IncludeInternalFields: 全文索引系统预置字段标记,默认false。 false:不包含系统预置字段, true:包含系统预置字段
# @type IncludeInternalFields: Boolean
# @param MetadataFlag: 元数据相关标志位,默认为0。 0:全文索引包括开启键值索引的元数据字段, 1:全文索引包括所有元数据字段,2:全文索引不包括元数据字段。
# @type MetadataFlag: Integer
attr_accessor :TopicId, :Status, :Rule, :IncludeInternalFields, :MetadataFlag
def initialize(topicid=nil, status=nil, rule=nil, includeinternalfields=nil, metadataflag=nil)
@TopicId = topicid
@Status = status
@Rule = rule
@IncludeInternalFields = includeinternalfields
@MetadataFlag = metadataflag
end
def deserialize(params)
@TopicId = params['TopicId']
@Status = params['Status']
unless params['Rule'].nil?
@Rule = RuleInfo.new
@Rule.deserialize(params['Rule'])
end
@IncludeInternalFields = params['IncludeInternalFields']
@MetadataFlag = params['MetadataFlag']
end
end
# ModifyIndex返回参数结构体
class ModifyIndexResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyLogset请求参数结构体
class ModifyLogsetRequest < TencentCloud::Common::AbstractModel
# @param LogsetId: 日志集ID
# @type LogsetId: String
# @param LogsetName: 日志集名称
# @type LogsetName: String
# @param Tags: 日志集的绑定的标签键值对。最大支持10个标签键值对,同一个资源只能同时绑定一个标签键。
# @type Tags: Array
attr_accessor :LogsetId, :LogsetName, :Tags
def initialize(logsetid=nil, logsetname=nil, tags=nil)
@LogsetId = logsetid
@LogsetName = logsetname
@Tags = tags
end
def deserialize(params)
@LogsetId = params['LogsetId']
@LogsetName = params['LogsetName']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
end
end
# ModifyLogset返回参数结构体
class ModifyLogsetResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyMachineGroup请求参数结构体
class ModifyMachineGroupRequest < TencentCloud::Common::AbstractModel
# @param GroupId: 机器组ID
# @type GroupId: String
# @param GroupName: 机器组名称
# @type GroupName: String
# @param MachineGroupType: 机器组类型
# @type MachineGroupType: :class:`Tencentcloud::Cls.v20201016.models.MachineGroupTypeInfo`
# @param Tags: 标签列表
# @type Tags: Array
# @param AutoUpdate: 是否开启机器组自动更新
# @type AutoUpdate: Boolean
# @param UpdateStartTime: 升级开始时间,建议业务低峰期升级LogListener
# @type UpdateStartTime: String
# @param UpdateEndTime: 升级结束时间,建议业务低峰期升级LogListener
# @type UpdateEndTime: String
# @param ServiceLogging: 是否开启服务日志,用于记录因Loglistener 服务自身产生的log,开启后,会创建内部日志集cls_service_logging和日志主题loglistener_status,loglistener_alarm,loglistener_business,不产生计费
# @type ServiceLogging: Boolean
attr_accessor :GroupId, :GroupName, :MachineGroupType, :Tags, :AutoUpdate, :UpdateStartTime, :UpdateEndTime, :ServiceLogging
def initialize(groupid=nil, groupname=nil, machinegrouptype=nil, tags=nil, autoupdate=nil, updatestarttime=nil, updateendtime=nil, servicelogging=nil)
@GroupId = groupid
@GroupName = groupname
@MachineGroupType = machinegrouptype
@Tags = tags
@AutoUpdate = autoupdate
@UpdateStartTime = updatestarttime
@UpdateEndTime = updateendtime
@ServiceLogging = servicelogging
end
def deserialize(params)
@GroupId = params['GroupId']
@GroupName = params['GroupName']
unless params['MachineGroupType'].nil?
@MachineGroupType = MachineGroupTypeInfo.new
@MachineGroupType.deserialize(params['MachineGroupType'])
end
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@AutoUpdate = params['AutoUpdate']
@UpdateStartTime = params['UpdateStartTime']
@UpdateEndTime = params['UpdateEndTime']
@ServiceLogging = params['ServiceLogging']
end
end
# ModifyMachineGroup返回参数结构体
class ModifyMachineGroupResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyShipper请求参数结构体
class ModifyShipperRequest < TencentCloud::Common::AbstractModel
# @param ShipperId: 投递规则ID
# @type ShipperId: String
# @param Bucket: 投递规则投递的新的bucket
# @type Bucket: String
# @param Prefix: 投递规则投递的新的目录前缀
# @type Prefix: String
# @param Status: 投递规则的开关状态
# @type Status: Boolean
# @param ShipperName: 投递规则的名字
# @type ShipperName: String
# @param Interval: 投递的时间间隔,单位 秒,默认300,范围 300-900
# @type Interval: Integer
# @param MaxSize: 投递的文件的最大值,单位 MB,默认256,范围 100-256
# @type MaxSize: Integer
# @param FilterRules: 投递日志的过滤规则,匹配的日志进行投递,各rule之间是and关系,最多5个,数组为空则表示不过滤而全部投递
# @type FilterRules: Array
# @param Partition: 投递日志的分区规则,支持strftime的时间格式表示
# @type Partition: String
# @param Compress: 投递日志的压缩配置
# @type Compress: :class:`Tencentcloud::Cls.v20201016.models.CompressInfo`
# @param Content: 投递日志的内容格式配置
# @type Content: :class:`Tencentcloud::Cls.v20201016.models.ContentInfo`
# @param FilenameMode: 投递文件命名配置,0:随机数命名,1:投递时间命名,默认0(随机数命名)
# @type FilenameMode: Integer
attr_accessor :ShipperId, :Bucket, :Prefix, :Status, :ShipperName, :Interval, :MaxSize, :FilterRules, :Partition, :Compress, :Content, :FilenameMode
def initialize(shipperid=nil, bucket=nil, prefix=nil, status=nil, shippername=nil, interval=nil, maxsize=nil, filterrules=nil, partition=nil, compress=nil, content=nil, filenamemode=nil)
@ShipperId = shipperid
@Bucket = bucket
@Prefix = prefix
@Status = status
@ShipperName = shippername
@Interval = interval
@MaxSize = maxsize
@FilterRules = filterrules
@Partition = partition
@Compress = compress
@Content = content
@FilenameMode = filenamemode
end
def deserialize(params)
@ShipperId = params['ShipperId']
@Bucket = params['Bucket']
@Prefix = params['Prefix']
@Status = params['Status']
@ShipperName = params['ShipperName']
@Interval = params['Interval']
@MaxSize = params['MaxSize']
unless params['FilterRules'].nil?
@FilterRules = []
params['FilterRules'].each do |i|
filterruleinfo_tmp = FilterRuleInfo.new
filterruleinfo_tmp.deserialize(i)
@FilterRules << filterruleinfo_tmp
end
end
@Partition = params['Partition']
unless params['Compress'].nil?
@Compress = CompressInfo.new
@Compress.deserialize(params['Compress'])
end
unless params['Content'].nil?
@Content = ContentInfo.new
@Content.deserialize(params['Content'])
end
@FilenameMode = params['FilenameMode']
end
end
# ModifyShipper返回参数结构体
class ModifyShipperResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# ModifyTopic请求参数结构体
class ModifyTopicRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param TopicName: 日志主题名称
# @type TopicName: String
# @param Tags: 标签描述列表,通过指定该参数可以同时绑定标签到相应的日志主题。最大支持10个标签键值对,并且不能有重复的键值对。
# @type Tags: Array
# @param Status: 该日志主题是否开始采集
# @type Status: Boolean
# @param AutoSplit: 是否开启自动分裂
# @type AutoSplit: Boolean
# @param MaxSplitPartitions: 若开启最大分裂,该主题能够能够允许的最大分区数
# @type MaxSplitPartitions: Integer
# @param Period: 生命周期,单位天,标准存储取值范围1~3600,低频存储取值范围7~3600。取值为3640时代表永久保存
# @type Period: Integer
attr_accessor :TopicId, :TopicName, :Tags, :Status, :AutoSplit, :MaxSplitPartitions, :Period
def initialize(topicid=nil, topicname=nil, tags=nil, status=nil, autosplit=nil, maxsplitpartitions=nil, period=nil)
@TopicId = topicid
@TopicName = topicname
@Tags = tags
@Status = status
@AutoSplit = autosplit
@MaxSplitPartitions = maxsplitpartitions
@Period = period
end
def deserialize(params)
@TopicId = params['TopicId']
@TopicName = params['TopicName']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@Status = params['Status']
@AutoSplit = params['AutoSplit']
@MaxSplitPartitions = params['MaxSplitPartitions']
@Period = params['Period']
end
end
# ModifyTopic返回参数结构体
class ModifyTopicResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 告警策略中监控任务的执行时间点
class MonitorTime < TencentCloud::Common::AbstractModel
# @param Type: 可选值:
#
Period - 周期执行
#
Fixed - 定期执行
# @type Type: String
# @param Time: 执行的周期,或者定制执行的时间节点。单位为分钟,取值范围为1~1440。
# @type Time: Integer
attr_accessor :Type, :Time
def initialize(type=nil, time=nil)
@Type = type
@Time = time
end
def deserialize(params)
@Type = params['Type']
@Time = params['Time']
end
end
# 告警通知接收者信息
class NoticeReceiver < TencentCloud::Common::AbstractModel
# @param ReceiverType: 接受者类型。可选值:
#
Uin - 用户ID
#
Group - 用户组ID
# 暂不支持其余接收者类型。
# @type ReceiverType: String
# @param ReceiverIds: 接收者。
# @type ReceiverIds: Array
# @param ReceiverChannels: 通知接收渠道。
#
Email - 邮件
#
Sms - 短信
#
WeChat - 微信
#
Phone - 电话
# @type ReceiverChannels: Array
# @param StartTime: 允许接收信息的开始时间。
# @type StartTime: String
# @param EndTime: 允许接收信息的结束时间。
# @type EndTime: String
# @param Index: 位序
# @type Index: Integer
attr_accessor :ReceiverType, :ReceiverIds, :ReceiverChannels, :StartTime, :EndTime, :Index
def initialize(receivertype=nil, receiverids=nil, receiverchannels=nil, starttime=nil, endtime=nil, index=nil)
@ReceiverType = receivertype
@ReceiverIds = receiverids
@ReceiverChannels = receiverchannels
@StartTime = starttime
@EndTime = endtime
@Index = index
end
def deserialize(params)
@ReceiverType = params['ReceiverType']
@ReceiverIds = params['ReceiverIds']
@ReceiverChannels = params['ReceiverChannels']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@Index = params['Index']
end
end
# OpenKafkaConsumer请求参数结构体
class OpenKafkaConsumerRequest < TencentCloud::Common::AbstractModel
# @param FromTopicId: CLS控制台创建的TopicId
# @type FromTopicId: String
# @param Compression: 压缩方式[0:NONE;2:SNAPPY;3:LZ4]
# @type Compression: Integer
attr_accessor :FromTopicId, :Compression
def initialize(fromtopicid=nil, compression=nil)
@FromTopicId = fromtopicid
@Compression = compression
end
def deserialize(params)
@FromTopicId = params['FromTopicId']
@Compression = params['Compression']
end
end
# OpenKafkaConsumer返回参数结构体
class OpenKafkaConsumerResponse < TencentCloud::Common::AbstractModel
# @param TopicID: 待消费TopicId
# @type TopicID: String
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :TopicID, :RequestId
def initialize(topicid=nil, requestid=nil)
@TopicID = topicid
@RequestId = requestid
end
def deserialize(params)
@TopicID = params['TopicID']
@RequestId = params['RequestId']
end
end
# Parquet内容
class ParquetInfo < TencentCloud::Common::AbstractModel
# @param ParquetKeyInfo: ParquetKeyInfo数组
# @type ParquetKeyInfo: Array
attr_accessor :ParquetKeyInfo
def initialize(parquetkeyinfo=nil)
@ParquetKeyInfo = parquetkeyinfo
end
def deserialize(params)
unless params['ParquetKeyInfo'].nil?
@ParquetKeyInfo = []
params['ParquetKeyInfo'].each do |i|
parquetkeyinfo_tmp = ParquetKeyInfo.new
parquetkeyinfo_tmp.deserialize(i)
@ParquetKeyInfo << parquetkeyinfo_tmp
end
end
end
end
# Parquet内容描述
class ParquetKeyInfo < TencentCloud::Common::AbstractModel
# @param KeyName: 键值名称
# @type KeyName: String
# @param KeyType: 数据类型,目前支持6种类型:string、boolean、int32、int64、float、double
# @type KeyType: String
# @param KeyNonExistingField: 解析失败赋值信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type KeyNonExistingField: String
attr_accessor :KeyName, :KeyType, :KeyNonExistingField
def initialize(keyname=nil, keytype=nil, keynonexistingfield=nil)
@KeyName = keyname
@KeyType = keytype
@KeyNonExistingField = keynonexistingfield
end
def deserialize(params)
@KeyName = params['KeyName']
@KeyType = params['KeyType']
@KeyNonExistingField = params['KeyNonExistingField']
end
end
# 日志主题分区信息
class PartitionInfo < TencentCloud::Common::AbstractModel
# @param PartitionId: 分区ID
# @type PartitionId: Integer
# @param Status: 分区的状态(readwrite或者是readonly)
# @type Status: String
# @param InclusiveBeginKey: 分区哈希键起始key
# @type InclusiveBeginKey: String
# @param ExclusiveEndKey: 分区哈希键结束key
# @type ExclusiveEndKey: String
# @param CreateTime: 分区创建时间
# @type CreateTime: String
# @param LastWriteTime: 只读分区数据停止写入时间
# 注意:此字段可能返回 null,表示取不到有效值。
# @type LastWriteTime: String
attr_accessor :PartitionId, :Status, :InclusiveBeginKey, :ExclusiveEndKey, :CreateTime, :LastWriteTime
def initialize(partitionid=nil, status=nil, inclusivebeginkey=nil, exclusiveendkey=nil, createtime=nil, lastwritetime=nil)
@PartitionId = partitionid
@Status = status
@InclusiveBeginKey = inclusivebeginkey
@ExclusiveEndKey = exclusiveendkey
@CreateTime = createtime
@LastWriteTime = lastwritetime
end
def deserialize(params)
@PartitionId = params['PartitionId']
@Status = params['Status']
@InclusiveBeginKey = params['InclusiveBeginKey']
@ExclusiveEndKey = params['ExclusiveEndKey']
@CreateTime = params['CreateTime']
@LastWriteTime = params['LastWriteTime']
end
end
# RetryShipperTask请求参数结构体
class RetryShipperTaskRequest < TencentCloud::Common::AbstractModel
# @param ShipperId: 投递规则ID
# @type ShipperId: String
# @param TaskId: 投递任务ID
# @type TaskId: String
attr_accessor :ShipperId, :TaskId
def initialize(shipperid=nil, taskid=nil)
@ShipperId = shipperid
@TaskId = taskid
end
def deserialize(params)
@ShipperId = params['ShipperId']
@TaskId = params['TaskId']
end
end
# RetryShipperTask返回参数结构体
class RetryShipperTaskResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 索引规则,FullText、KeyValue、Tag参数必须输入一个有效参数
class RuleInfo < TencentCloud::Common::AbstractModel
# @param FullText: 全文索引配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FullText: :class:`Tencentcloud::Cls.v20201016.models.FullTextInfo`
# @param KeyValue: 键值索引配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type KeyValue: :class:`Tencentcloud::Cls.v20201016.models.RuleKeyValueInfo`
# @param Tag: 元字段索引配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tag: :class:`Tencentcloud::Cls.v20201016.models.RuleTagInfo`
attr_accessor :FullText, :KeyValue, :Tag
def initialize(fulltext=nil, keyvalue=nil, tag=nil)
@FullText = fulltext
@KeyValue = keyvalue
@Tag = tag
end
def deserialize(params)
unless params['FullText'].nil?
@FullText = FullTextInfo.new
@FullText.deserialize(params['FullText'])
end
unless params['KeyValue'].nil?
@KeyValue = RuleKeyValueInfo.new
@KeyValue.deserialize(params['KeyValue'])
end
unless params['Tag'].nil?
@Tag = RuleTagInfo.new
@Tag.deserialize(params['Tag'])
end
end
end
# 键值索引配置
class RuleKeyValueInfo < TencentCloud::Common::AbstractModel
# @param CaseSensitive: 是否大小写敏感
# @type CaseSensitive: Boolean
# @param KeyValues: 需要建立索引的键值对信息;最大只能配置100个键值对
# @type KeyValues: Array
attr_accessor :CaseSensitive, :KeyValues
def initialize(casesensitive=nil, keyvalues=nil)
@CaseSensitive = casesensitive
@KeyValues = keyvalues
end
def deserialize(params)
@CaseSensitive = params['CaseSensitive']
unless params['KeyValues'].nil?
@KeyValues = []
params['KeyValues'].each do |i|
keyvalueinfo_tmp = KeyValueInfo.new
keyvalueinfo_tmp.deserialize(i)
@KeyValues << keyvalueinfo_tmp
end
end
end
end
# 元字段索引配置
class RuleTagInfo < TencentCloud::Common::AbstractModel
# @param CaseSensitive: 是否大小写敏感
# @type CaseSensitive: Boolean
# @param KeyValues: 元字段索引配置中的字段信息
# @type KeyValues: Array
attr_accessor :CaseSensitive, :KeyValues
def initialize(casesensitive=nil, keyvalues=nil)
@CaseSensitive = casesensitive
@KeyValues = keyvalues
end
def deserialize(params)
@CaseSensitive = params['CaseSensitive']
unless params['KeyValues'].nil?
@KeyValues = []
params['KeyValues'].each do |i|
keyvalueinfo_tmp = KeyValueInfo.new
keyvalueinfo_tmp.deserialize(i)
@KeyValues << keyvalueinfo_tmp
end
end
end
end
# SearchLog请求参数结构体
class SearchLogRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 要检索分析的日志主题ID
# @type TopicId: String
# @param From: 要检索分析的日志的起始时间,Unix时间戳(毫秒)
# @type From: Integer
# @param To: 要检索分析的日志的结束时间,Unix时间戳(毫秒)
# @type To: Integer
# @param Query: 检索分析语句,最大长度为12KB
# 语句由 [检索条件] | [SQL语句]构成,无需对日志进行统计分析时,可省略其中的管道符 |
及SQL语句
# @type Query: String
# @param Limit: 表示单次查询返回的原始日志条数,最大值为1000,获取后续日志需使用Context参数
# 注意:
# * 仅当检索分析语句(Query)不包含SQL时有效
# * SQL结果条数指定方式参考SQL LIMIT语法
# @type Limit: Integer
# @param Context: 透传上次接口返回的Context值,可获取后续更多日志,总计最多可获取1万条原始日志,过期时间1小时
# 注意:
# * 透传该参数时,请勿修改除该参数外的其它参数
# * 仅当检索分析语句(Query)不包含SQL时有效
# * SQL获取后续结果参考SQL LIMIT语法
# @type Context: String
# @param Sort: 原始日志是否按时间排序返回;可选值:asc(升序)、desc(降序),默认为 desc
# 注意:
# * 仅当检索分析语句(Query)不包含SQL时有效
# * SQL结果排序方式参考SQL ORDER BY语法
# @type Sort: String
# @param UseNewAnalysis: 为true代表使用新的检索结果返回方式,输出参数AnalysisRecords和Columns有效
# 为false时代表使用老的检索结果返回方式, 输出AnalysisResults和ColNames有效
# 两种返回方式在编码格式上有少量区别,建议使用true
# @type UseNewAnalysis: Boolean
# @param SamplingRate: 执行统计分析(Query中包含SQL)时,是否对原始日志先进行采样,再进行统计分析。
# 0:自动采样;
# 0~1:按指定采样率采样,例如0.02;
# 1:不采样,即精确分析
# 默认值为1
# @type SamplingRate: Float
attr_accessor :TopicId, :From, :To, :Query, :Limit, :Context, :Sort, :UseNewAnalysis, :SamplingRate
def initialize(topicid=nil, from=nil, to=nil, query=nil, limit=nil, context=nil, sort=nil, usenewanalysis=nil, samplingrate=nil)
@TopicId = topicid
@From = from
@To = to
@Query = query
@Limit = limit
@Context = context
@Sort = sort
@UseNewAnalysis = usenewanalysis
@SamplingRate = samplingrate
end
def deserialize(params)
@TopicId = params['TopicId']
@From = params['From']
@To = params['To']
@Query = params['Query']
@Limit = params['Limit']
@Context = params['Context']
@Sort = params['Sort']
@UseNewAnalysis = params['UseNewAnalysis']
@SamplingRate = params['SamplingRate']
end
end
# SearchLog返回参数结构体
class SearchLogResponse < TencentCloud::Common::AbstractModel
# @param Context: 透传本次接口返回的Context值,可获取后续更多日志,过期时间1小时
# @type Context: String
# @param ListOver: 符合检索条件的日志是否已全部返回,如未全部返回可使用Context参数获取后续更多日志
# 注意:仅当检索分析语句(Query)不包含SQL时有效
# @type ListOver: Boolean
# @param Analysis: 返回的是否为统计分析(即SQL)结果
# @type Analysis: Boolean
# @param Results: 匹配检索条件的原始日志
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Results: Array
# @param ColNames: 日志统计分析结果的列名
# 当UseNewAnalysis为false时生效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ColNames: Array
# @param AnalysisResults: 日志统计分析结果
# 当UseNewAnalysis为false时生效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AnalysisResults: Array
# @param AnalysisRecords: 日志统计分析结果
# 当UseNewAnalysis为true时生效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AnalysisRecords: Array
# @param Columns: 日志统计分析结果的列属性
# 当UseNewAnalysis为true时生效
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Columns: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Context, :ListOver, :Analysis, :Results, :ColNames, :AnalysisResults, :AnalysisRecords, :Columns, :RequestId
def initialize(context=nil, listover=nil, analysis=nil, results=nil, colnames=nil, analysisresults=nil, analysisrecords=nil, columns=nil, requestid=nil)
@Context = context
@ListOver = listover
@Analysis = analysis
@Results = results
@ColNames = colnames
@AnalysisResults = analysisresults
@AnalysisRecords = analysisrecords
@Columns = columns
@RequestId = requestid
end
def deserialize(params)
@Context = params['Context']
@ListOver = params['ListOver']
@Analysis = params['Analysis']
unless params['Results'].nil?
@Results = []
params['Results'].each do |i|
loginfo_tmp = LogInfo.new
loginfo_tmp.deserialize(i)
@Results << loginfo_tmp
end
end
@ColNames = params['ColNames']
unless params['AnalysisResults'].nil?
@AnalysisResults = []
params['AnalysisResults'].each do |i|
logitems_tmp = LogItems.new
logitems_tmp.deserialize(i)
@AnalysisResults << logitems_tmp
end
end
@AnalysisRecords = params['AnalysisRecords']
unless params['Columns'].nil?
@Columns = []
params['Columns'].each do |i|
column_tmp = Column.new
column_tmp.deserialize(i)
@Columns << column_tmp
end
end
@RequestId = params['RequestId']
end
end
# 投递规则
class ShipperInfo < TencentCloud::Common::AbstractModel
# @param ShipperId: 投递规则ID
# @type ShipperId: String
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param Bucket: 投递的bucket地址
# @type Bucket: String
# @param Prefix: 投递的前缀目录
# @type Prefix: String
# @param ShipperName: 投递规则的名字
# @type ShipperName: String
# @param Interval: 投递的时间间隔,单位 秒
# @type Interval: Integer
# @param MaxSize: 投递的文件的最大值,单位 MB
# @type MaxSize: Integer
# @param Status: 是否生效
# @type Status: Boolean
# @param FilterRules: 投递日志的过滤规则
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FilterRules: Array
# @param Partition: 投递日志的分区规则,支持strftime的时间格式表示
# @type Partition: String
# @param Compress: 投递日志的压缩配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Compress: :class:`Tencentcloud::Cls.v20201016.models.CompressInfo`
# @param Content: 投递日志的内容格式配置
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Content: :class:`Tencentcloud::Cls.v20201016.models.ContentInfo`
# @param CreateTime: 投递日志的创建时间
# @type CreateTime: String
# @param FilenameMode: 投递文件命名配置,0:随机数命名,1:投递时间命名,默认0(随机数命名)
# 注意:此字段可能返回 null,表示取不到有效值。
# @type FilenameMode: Integer
attr_accessor :ShipperId, :TopicId, :Bucket, :Prefix, :ShipperName, :Interval, :MaxSize, :Status, :FilterRules, :Partition, :Compress, :Content, :CreateTime, :FilenameMode
def initialize(shipperid=nil, topicid=nil, bucket=nil, prefix=nil, shippername=nil, interval=nil, maxsize=nil, status=nil, filterrules=nil, partition=nil, compress=nil, content=nil, createtime=nil, filenamemode=nil)
@ShipperId = shipperid
@TopicId = topicid
@Bucket = bucket
@Prefix = prefix
@ShipperName = shippername
@Interval = interval
@MaxSize = maxsize
@Status = status
@FilterRules = filterrules
@Partition = partition
@Compress = compress
@Content = content
@CreateTime = createtime
@FilenameMode = filenamemode
end
def deserialize(params)
@ShipperId = params['ShipperId']
@TopicId = params['TopicId']
@Bucket = params['Bucket']
@Prefix = params['Prefix']
@ShipperName = params['ShipperName']
@Interval = params['Interval']
@MaxSize = params['MaxSize']
@Status = params['Status']
unless params['FilterRules'].nil?
@FilterRules = []
params['FilterRules'].each do |i|
filterruleinfo_tmp = FilterRuleInfo.new
filterruleinfo_tmp.deserialize(i)
@FilterRules << filterruleinfo_tmp
end
end
@Partition = params['Partition']
unless params['Compress'].nil?
@Compress = CompressInfo.new
@Compress.deserialize(params['Compress'])
end
unless params['Content'].nil?
@Content = ContentInfo.new
@Content.deserialize(params['Content'])
end
@CreateTime = params['CreateTime']
@FilenameMode = params['FilenameMode']
end
end
# 投递任务信息
class ShipperTaskInfo < TencentCloud::Common::AbstractModel
# @param TaskId: 投递任务ID
# @type TaskId: String
# @param ShipperId: 投递信息ID
# @type ShipperId: String
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param RangeStart: 本批投递的日志的开始时间戳,毫秒
# @type RangeStart: Integer
# @param RangeEnd: 本批投递的日志的结束时间戳, 毫秒
# @type RangeEnd: Integer
# @param StartTime: 本次投递任务的开始时间戳, 毫秒
# @type StartTime: Integer
# @param EndTime: 本次投递任务的结束时间戳, 毫秒
# @type EndTime: Integer
# @param Status: 本次投递的结果,"success","running","failed"
# @type Status: String
# @param Message: 结果的详细信息
# @type Message: String
attr_accessor :TaskId, :ShipperId, :TopicId, :RangeStart, :RangeEnd, :StartTime, :EndTime, :Status, :Message
def initialize(taskid=nil, shipperid=nil, topicid=nil, rangestart=nil, rangeend=nil, starttime=nil, endtime=nil, status=nil, message=nil)
@TaskId = taskid
@ShipperId = shipperid
@TopicId = topicid
@RangeStart = rangestart
@RangeEnd = rangeend
@StartTime = starttime
@EndTime = endtime
@Status = status
@Message = message
end
def deserialize(params)
@TaskId = params['TaskId']
@ShipperId = params['ShipperId']
@TopicId = params['TopicId']
@RangeStart = params['RangeStart']
@RangeEnd = params['RangeEnd']
@StartTime = params['StartTime']
@EndTime = params['EndTime']
@Status = params['Status']
@Message = params['Message']
end
end
# SplitPartition请求参数结构体
class SplitPartitionRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param PartitionId: 待分裂分区ID
# @type PartitionId: Integer
# @param SplitKey: 分区切分的哈希key的位置,只在Number=2时有意义
# @type SplitKey: String
# @param Number: 分区分裂个数(可选),默认等于2
# @type Number: Integer
attr_accessor :TopicId, :PartitionId, :SplitKey, :Number
def initialize(topicid=nil, partitionid=nil, splitkey=nil, number=nil)
@TopicId = topicid
@PartitionId = partitionid
@SplitKey = splitkey
@Number = number
end
def deserialize(params)
@TopicId = params['TopicId']
@PartitionId = params['PartitionId']
@SplitKey = params['SplitKey']
@Number = params['Number']
end
end
# SplitPartition返回参数结构体
class SplitPartitionResponse < TencentCloud::Common::AbstractModel
# @param Partitions: 分裂结果集
# @type Partitions: Array
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :Partitions, :RequestId
def initialize(partitions=nil, requestid=nil)
@Partitions = partitions
@RequestId = requestid
end
def deserialize(params)
unless params['Partitions'].nil?
@Partitions = []
params['Partitions'].each do |i|
partitioninfo_tmp = PartitionInfo.new
partitioninfo_tmp.deserialize(i)
@Partitions << partitioninfo_tmp
end
end
@RequestId = params['RequestId']
end
end
# 创建资源实例时同时绑定的标签对说明
class Tag < TencentCloud::Common::AbstractModel
# @param Key: 标签键
# @type Key: String
# @param Value: 标签值
# @type Value: String
attr_accessor :Key, :Value
def initialize(key=nil, value=nil)
@Key = key
@Value = value
end
def deserialize(params)
@Key = params['Key']
@Value = params['Value']
end
end
# 日志主题信息
class TopicInfo < TencentCloud::Common::AbstractModel
# @param LogsetId: 日志集ID
# @type LogsetId: String
# @param TopicId: 日志主题ID
# @type TopicId: String
# @param TopicName: 日志主题名称
# @type TopicName: String
# @param PartitionCount: 主题分区个数
# @type PartitionCount: Integer
# @param Index: 是否开启索引
# @type Index: Boolean
# @param AssumerName: 云产品标识,日志主题由其它云产品创建时,该字段会显示云产品名称,例如CDN、TKE
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AssumerName: String
# @param CreateTime: 创建时间
# @type CreateTime: String
# @param Status: 日主主题是否开启采集
# @type Status: Boolean
# @param Tags: 日志主题绑定的标签信息
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Tags: Array
# @param AutoSplit: 该主题是否开启自动分裂
# 注意:此字段可能返回 null,表示取不到有效值。
# @type AutoSplit: Boolean
# @param MaxSplitPartitions: 若开启自动分裂的话,该主题能够允许的最大分区数
# 注意:此字段可能返回 null,表示取不到有效值。
# @type MaxSplitPartitions: Integer
# @param StorageType: 日主题的存储类型
# 注意:此字段可能返回 null,表示取不到有效值。
# @type StorageType: String
# @param Period: 生命周期,单位天,可取值范围1~3600。取值为3640时代表永久保存
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Period: Integer
# @param SubAssumerName: 云产品二级标识,日志主题由其它云产品创建时,该字段会显示云产品名称及其日志类型的二级分类,例如TKE-Audit、TKE-Event。部分云产品仅有云产品标识(AssumerName),无该字段。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type SubAssumerName: String
# @param Describes: 日志主题描述
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Describes: String
attr_accessor :LogsetId, :TopicId, :TopicName, :PartitionCount, :Index, :AssumerName, :CreateTime, :Status, :Tags, :AutoSplit, :MaxSplitPartitions, :StorageType, :Period, :SubAssumerName, :Describes
def initialize(logsetid=nil, topicid=nil, topicname=nil, partitioncount=nil, index=nil, assumername=nil, createtime=nil, status=nil, tags=nil, autosplit=nil, maxsplitpartitions=nil, storagetype=nil, period=nil, subassumername=nil, describes=nil)
@LogsetId = logsetid
@TopicId = topicid
@TopicName = topicname
@PartitionCount = partitioncount
@Index = index
@AssumerName = assumername
@CreateTime = createtime
@Status = status
@Tags = tags
@AutoSplit = autosplit
@MaxSplitPartitions = maxsplitpartitions
@StorageType = storagetype
@Period = period
@SubAssumerName = subassumername
@Describes = describes
end
def deserialize(params)
@LogsetId = params['LogsetId']
@TopicId = params['TopicId']
@TopicName = params['TopicName']
@PartitionCount = params['PartitionCount']
@Index = params['Index']
@AssumerName = params['AssumerName']
@CreateTime = params['CreateTime']
@Status = params['Status']
unless params['Tags'].nil?
@Tags = []
params['Tags'].each do |i|
tag_tmp = Tag.new
tag_tmp.deserialize(i)
@Tags << tag_tmp
end
end
@AutoSplit = params['AutoSplit']
@MaxSplitPartitions = params['MaxSplitPartitions']
@StorageType = params['StorageType']
@Period = params['Period']
@SubAssumerName = params['SubAssumerName']
@Describes = params['Describes']
end
end
# UploadLog请求参数结构体
class UploadLogRequest < TencentCloud::Common::AbstractModel
# @param TopicId: 主题id
# @type TopicId: String
# @param HashKey: 根据 hashkey 写入相应范围的主题分区
# @type HashKey: String
# @param CompressType: 压缩方法
# @type CompressType: String
attr_accessor :TopicId, :HashKey, :CompressType
def initialize(topicid=nil, hashkey=nil, compresstype=nil)
@TopicId = topicid
@HashKey = hashkey
@CompressType = compresstype
end
def deserialize(params)
@TopicId = params['TopicId']
@HashKey = params['HashKey']
@CompressType = params['CompressType']
end
end
# UploadLog返回参数结构体
class UploadLogResponse < TencentCloud::Common::AbstractModel
# @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。
# @type RequestId: String
attr_accessor :RequestId
def initialize(requestid=nil)
@RequestId = requestid
end
def deserialize(params)
@RequestId = params['RequestId']
end
end
# 需要开启键值索引的字段的索引描述信息
class ValueInfo < TencentCloud::Common::AbstractModel
# @param Type: 字段类型,目前支持的类型有:long、text、double
# @type Type: String
# @param Tokenizer: 字段的分词符,其中的每个字符代表一个分词符;
# 仅支持英文符号、\n\t\r及转义符\;
# long及double类型字段需为空;
# 注意:\n\t\r本身已被转义,直接使用双引号包裹即可作为入参,无需再次转义
# @type Tokenizer: String
# @param SqlFlag: 字段是否开启分析功能
# @type SqlFlag: Boolean
# @param ContainZH: 是否包含中文
# 注意:此字段可能返回 null,表示取不到有效值。
# @type ContainZH: Boolean
attr_accessor :Type, :Tokenizer, :SqlFlag, :ContainZH
def initialize(type=nil, tokenizer=nil, sqlflag=nil, containzh=nil)
@Type = type
@Tokenizer = tokenizer
@SqlFlag = sqlflag
@ContainZH = containzh
end
def deserialize(params)
@Type = params['Type']
@Tokenizer = params['Tokenizer']
@SqlFlag = params['SqlFlag']
@ContainZH = params['ContainZH']
end
end
# 回调地址
class WebCallback < TencentCloud::Common::AbstractModel
# @param Url: 回调地址。
# @type Url: String
# @param CallbackType: 回调的类型。可选值:
# WeCom
# Http
# @type CallbackType: String
# @param Method: 回调方法。可选值:
# POST
# PUT
# 默认值为POST。CallbackType为Http时为必选。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Method: String
# @param Headers: 请求头。
# 注意:该参数已废弃,请在创建告警策略接口CallBack参数中指定请求头。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Headers: Array
# @param Body: 请求内容。
# 注意:该参数已废弃,请在创建告警策略接口CallBack参数中指定请求内容。
# 注意:此字段可能返回 null,表示取不到有效值。
# @type Body: String
# @param Index: 序号
# @type Index: Integer
attr_accessor :Url, :CallbackType, :Method, :Headers, :Body, :Index
def initialize(url=nil, callbacktype=nil, method=nil, headers=nil, body=nil, index=nil)
@Url = url
@CallbackType = callbacktype
@Method = method
@Headers = headers
@Body = body
@Index = index
end
def deserialize(params)
@Url = params['Url']
@CallbackType = params['CallbackType']
@Method = params['Method']
@Headers = params['Headers']
@Body = params['Body']
@Index = params['Index']
end
end
end
end
end