System log.
Version: 2021-05-26
module huawei-syslog { yang-version 1; namespace "urn:huawei:yang:huawei-syslog"; prefix syslog; import ietf-inet-types { prefix inet; } import ietf-yang-types { prefix yang; } import huawei-extension { prefix ext; } import huawei-network-instance { prefix ni; } import huawei-ssl { prefix ssl; } import huawei-ifm { prefix ifm; } import huawei-pub-type { prefix pub-type; } organization "Huawei Technologies Co., Ltd."; contact "Huawei Industrial Base Bantian, Longgang Shenzhen 518129 People's Republic of China Website: http://www.huawei.com Email: support@huawei.com"; description "System log."; revision "2021-05-26" { description "Add ssl-policy-name node."; reference "Huawei private."; } revision "2021-03-17" { description "Add collect-log-process and collect-log."; reference "Huawei private."; } revision "2020-07-21" { description "Add character-set node."; reference "Huawei private."; } revision "2020-07-10" { description "Add container and rpc."; reference "Huawei private."; } revision "2020-06-02" { description "Modify information of leafs."; reference "Huawei private."; } revision "2020-05-22" { description "Add the brief format of syslog host."; reference "Huawei private."; } revision "2020-02-24" { description "Add the syslog node."; reference "Huawei private."; } revision "2020-02-19" { description "Add the name and activated of syslog host."; reference "Huawei private."; } revision "2020-02-11" { description "Add the severity mask and facility mask of syslog host."; reference "Huawei private."; } revision "2020-01-20" { description "Add syslogserver."; reference "Huawei private."; } revision "2019-09-24" { description "Initial revision."; reference "Huawei private."; } ext:task-name "log"; typedef loghost-facility { type enumeration { enum "local0" { value 16; description "Log server local 0."; } enum "local1" { value 17; description "Log server local 1."; } enum "local2" { value 18; description "Log server local 2."; } enum "local3" { value 19; description "Log server local 3."; } enum "local4" { value 20; description "Log server local 4."; } enum "local5" { value 21; description "Log server local 5."; } enum "local6" { value 22; description "Log server local 6."; } enum "local7" { value 23; description "Log server local 7."; } } description "The type of log host facility."; } typedef log-level { type enumeration { enum "emergencies" { value 0; description "The log host level is emergencies."; } enum "alert" { value 1; description "The log host level is alert."; } enum "critical" { value 2; description "The log host level is critical."; } enum "error" { value 3; description "The log host level is error."; } enum "warning" { value 4; description "The log host level is warning."; } enum "notification" { value 5; description "The log host level is notification."; } enum "informational" { value 6; description "The log host level is informational."; } enum "debugging" { value 7; description "The log host level is debugging."; } } description "The type of log level."; } typedef log-type { type enumeration { enum "eventlog" { value 2; description "The event log."; } enum "operlog" { value 1; description "The operation log."; } enum "alarmlog" { value 5; description "The alarm log."; } enum "diaglog" { value 4; description "The diagnose log."; } enum "notificationlog" { value 10; description "The notification Log."; } enum "maintainlog" { value 11; description "The maintain Log."; } enum "servicelog" { value 18; description "The service log."; } } description "The log type."; } typedef address-family-type { type enumeration { enum "ipv4" { value 1; description "The address type is IPv4."; } enum "ipv6" { value 2; description "The address type is IPv6."; } } description "The type of IP address."; } typedef timestamp { type enumeration { enum "date-boot" { value 11; description "Time elapsed since the system started. It is a relative time period."; } enum "date-second" { value 12; description "Date format with second precision."; } enum "date-tenthsecond" { value 13; description "Date format with tenth-second precision."; } enum "date-millisecond" { value 14; description "Date format with millisecond precision."; } enum "shortdate-second" { value 15; description "Short date format second precision."; } enum "shortdate-tenthsecond" { value 16; description "Short date format with tenth-second precision."; } enum "shortdate-millisecond" { value 17; description "Short date format with millisecond precision."; } enum "formatdate-second" { value 18; description "Format date format with second precision."; } enum "formatdate-tenthsecond" { value 19; description "Format date format with tenth-second precision."; } enum "formatdate-millisecond" { value 20; description "Format date format with millisecond precision."; } } description "The type of time stamp."; } typedef timestamp-format { type enumeration { enum "UTC" { value 0; description "UTC format."; } enum "localtime" { value 1; description "Local time format."; } } description "The time stamp format."; } typedef version-format { type enumeration { enum "rfc3164" { value 0; description "RFC3164."; } enum "rfc5424" { value 1; description "RFC5424."; } } description "The version format."; } typedef terminal-type { type enumeration { enum "CONSOLE" { value 1; description "Console access."; } enum "AUX" { value 2; description "Aux access."; } enum "TELNET" { value 3; description "Telnet access."; } enum "SSH" { value 4; description "SSH access."; } enum "MODEM" { value 5; description "Modem access."; } enum "FTP" { value 6; description "FTP access."; } enum "SWITCHLR" { value 7; description "SWITCHLR access."; } enum "SNMP" { value 8; description "SNMP access."; } enum "OPS" { value 9; description "OPS access."; } enum "EMS" { value 10; description "EMS access."; } enum "TM" { value 11; description "TM access."; } enum "LCT" { value 12; description "LCT access."; } enum "TL1" { value 13; description "TL1 access."; } } description "The terminal type."; } typedef logfile-type { type enumeration { enum "log" { value 1; description "Log logfile."; } enum "security" { value 3; description "Security logfile."; } enum "operation" { value 4; description "Operation logfile."; } enum "debug" { value 6; description "Debug logfile."; } } description "The type of log."; } typedef report-channel-type { type enumeration { enum "IETF" { value 0; description "Using an IETF channel to send alarm."; } enum "ITUT" { value 1; description "Using an ITU-T channel to send alarm."; } } description "The type of report channel."; } typedef transport-mode-type { type enumeration { enum "udp" { value 2; description "UDP transport mode."; } enum "tcp" { value 1; description "TCP transport mode."; } } description "The type of transport mode."; } typedef language-type { type enumeration { enum "english" { value 0; description "English mode."; } enum "chinese" { value 1; description "Chinese mode."; } } description "The type of language."; } typedef switch-type { type enumeration { enum "on" { value 0; description "On mode."; } enum "off" { value 1; description "Off mode."; } } description "The type of switch."; } typedef hostname-type { type enumeration { enum "sysname" { value 0; description "Sysname."; } enum "esn" { value 1; description "Esn."; } enum "user-defined" { value 2; description "User-defined."; } } description "The type of hostname."; } typedef save-log-type { type enumeration { enum "log" { value 0; description "Common logs."; } enum "diaglog" { value 1; description "Diagnoseic logs."; } } description "The saved log type."; } typedef prefix-file-type { type enumeration { enum "debug" { value 6; description "Debug logfile."; } } description "The type of log."; } typedef character-set { type enumeration { enum "UTF-8" { value 1; description "Character set is UTF-8."; } enum "ISO8859-1" { value 2; description "Character set is ISO8859-1."; } enum "GBK" { value 3; description "Character set is GBK."; } } description "The character set of syslog."; } typedef log-operation-state { type enumeration { enum "not-started" { value 1; description "The operation is not started."; } enum "collecting" { value 2; description "The log is collecting."; } enum "transfering" { value 3; description "The log is transferring."; } enum "finished" { value 4; description "The operation is finished."; } enum "device-full" { value 5; description "The disk space of the device is full."; } enum "collect-error" { value 6; description "The log fails to be collected."; } enum "transfer-error" { value 7; description "The log fails to be transferred."; } } description "Operation state."; } typedef report-log-type { type enumeration { enum "eventlog" { value 1; description "The event log."; } enum "operlog" { value 2; description "The operation log."; } enum "alarmlog" { value 5; description "The alarm log."; } enum "securitylog" { value 100; description "The security log."; } } description "Types of logs that can be reported through telemetry."; } container syslog { description "System log."; container servers { description "List of syslog servers."; list server { key "ip-type ipaddress is-default-vpn vrf-name"; max-elements 8; description "Configure attributes of log server."; leaf ip-type { type address-family-type; description "Log server address type, IPv4 or IPv6."; } leaf ipaddress { type inet:ip-address-no-zone; description "Log server address, IPv4 or IPv6 type."; } leaf is-default-vpn { type boolean; description "Enable/disable the default VPN."; } leaf vrf-name { type leafref { path "/ni:network-instance/ni:instances/ni:instance/ni:name"; } must "not(../is-default-vpn='true') or (../is-default-vpn='true' and ../vrf-name='_public_')"; description "VPN name on a log server."; } leaf host-name { type string { length "1..31"; } mandatory true; description "Configure host name of log server."; } leaf is-activated { type boolean; default "false"; description "Enable/disable the log host."; } leaf level { ext:support-filter "true"; type log-level; default "debugging"; description "Level of logs saved on a log server."; } leaf port { ext:dynamic-default; ext:support-filter "true"; type uint32 { range "1..65535"; } description "Number of a port recving logs."; } leaf facility { ext:support-filter "true"; type loghost-facility; default "local7"; description "Log record tool."; } leaf channel-id { ext:support-filter "true"; type leafref { path "/syslog:syslog/syslog:info-center-channels/syslog:info-center-channel/syslog:channel-id"; } default "2"; description "Channel number."; } leaf channel-name { type string { length "1..30"; } default "loghost"; config false; description "Channel name."; } leaf timestamp { ext:support-filter "true"; type timestamp-format; default "UTC"; description "Log server timestamp."; } leaf transport-mode { ext:support-filter "true"; type transport-mode-type; default "udp"; description "Transport mode."; } leaf ssl-policy-name { type leafref { path "/ssl:ssl/ssl:ssl-policys/ssl:ssl-policy/ssl:policy-name"; } must "../transport-mode='tcp'"; description "SSL policy name."; } leaf source-ip { ext:support-filter "true"; type inet:ip-address-no-zone; description "Syslog source IP address."; } leaf dns-identifier-name { type string { length "1..255"; } must "../transport-mode='tcp' and ../ssl-policy-name"; description "DNS Identifier Name."; } leaf is-brief-format { type boolean; default "false"; description "Enable/disable syslog Brief Format."; } leaf is-security-only { type boolean; must "../is-security-only='false' or (../is-security-only='true' and ../ssl-policy-name)"; default "false"; description "Enable/disable security log server."; } leaf facility-mask { type bits { bit local0 { position 0; description "The bit can be used to configure local0 facility."; } bit local1 { position 1; description "The bit can be used to configure local1 facility."; } bit local2 { position 2; description "The bit can be used to configure local2 facility."; } bit local3 { position 3; description "The bit can be used to configure local3 facility."; } bit local4 { position 4; description "The bit can be used to configure local4 facility."; } bit local5 { position 5; description "The bit can be used to configure local5 facility."; } bit local6 { position 6; description "The bit can be used to configure local6 facility."; } bit local7 { position 7; description "The bit can be used to configure local7 facility."; } } default "local0 local1 local2 local3 local4 local5 local6 local7"; description "Configure facility of the syslog host."; } leaf severity-mask { type bits { bit emergency { position 0; description "The bit can be used to configure emergency severity."; } bit alert { position 1; description "The bit can be used to configure alert severity."; } bit critical { position 2; description "The bit can be used to configure critical severity."; } bit error { position 3; description "The bit can be used to configure error severity."; } bit warning { position 4; description "The bit can be used to configure warning severity."; } bit notice { position 5; description "The bit can be used to configure notice severity."; } bit informational { position 6; description "The bit can be used to configure informational severity."; } bit debug { position 7; description "The bit can be used to configure debug severity."; } } default "emergency alert critical error warning notice informational debug"; description "Configure severity of logs received by the syslog host."; } } // list server } // container servers container global-parameter { description "Configure global parameter."; leaf info-center-enable { type boolean; default "true"; description "Enable/disable the info-center function."; } leaf buffer-size { type int32 { range "0..102400"; } default "512"; description "Size of a log buffer, the maximum value is configured by the PAF."; } leaf suppress-enable { type boolean; default "true"; description "Enable/disable suppression function of duplicate logs."; } leaf log-timestamp { type timestamp; default "date-second"; description "Timestamp format of log information."; } leaf trap-timestamp { type timestamp; default "date-second"; description "Timestamp format of alarm information."; } leaf debug-timestamp { type timestamp; default "date-millisecond"; description "Timestamp type of debugging information."; } leaf interface-name { type leafref { path "/ifm:ifm/ifm:interfaces/ifm:interface/ifm:name"; } description "Name of a log host interface sending logs."; } leaf logbuffer-enable { type boolean; default "true"; description "Enable/disable log buffer to output information."; } leaf trapbuffer-enable { type boolean; default "true"; description "Enable/disable trap buffer to output information."; } leaf trapbuffer-size { type int32 { range "0..1024"; } default "256"; description "Size of a trap buffer."; } leaf packet-priority { type int32 { range "0..7"; } default "0"; description "Set the priority of the syslog packet."; } leaf source-port { type uint32 { range "1025..65535"; } default "38514"; description "Port of the loghost."; } leaf log-none-timezone { type boolean; default "false"; description "Enable/disable log Timestamp Without Timezone."; } leaf trap-none-timezone { type boolean; default "false"; description "Enable/disable trap Timestamp Without Timezone."; } leaf debug-none-timezone { type boolean; default "false"; description "Enable/disable debug Timestamp Without Timezone."; } leaf delay-suppress-enable { type boolean; default "true"; description "Enable/disable event delay suppress is enabled."; } leaf event-logging-all { type boolean; default "false"; description "Enable/disable logging flag of global event."; } leaf character-set { type character-set; default "UTF-8"; description "This leaf means the character set when sending log to syslog host."; } } // container global-parameter container info-center-channels { description "List of Channel."; list info-center-channel { ext:generated-by "system"; ext:operation-exclude "create"; key "channel-id"; max-elements 10; description "Configure info center channel."; leaf channel-id { type uint32 { range "0..9"; } description "Number for channel."; } leaf channel-default-name { type string { length "1..30"; } config false; description "Info-center channel default name."; } leaf channel-name { ext:dynamic-default; type string { length "1..30"; pattern '[a-zA-Z][a-zA-Z0-9]*'; } description "Channel name."; } } // list info-center-channel } // container info-center-channels container info-center-sources { description "List of rules in channel for outputting information."; list info-center-source { ext:generated-by "system" { ext:can-be-deleted; } key "module-name channel-id"; description "Configure rule in channel for outputting information."; leaf module-name { ext:case-sensitivity "lower-only"; type string { length "1..31"; pattern '[^A-Z]*'; } description "Module name of the rule."; } leaf channel-id { type leafref { path "/syslog:syslog/syslog:info-center-channels/syslog:info-center-channel/syslog:channel-id"; } description "Number of a channel."; } leaf channel-name { type string { length "1..30"; } config false; description "Name of a channel."; } leaf enable-log { ext:dynamic-default; type boolean; description "Enable/disable the log output function."; } leaf enable-log-level { ext:dynamic-default; type log-level; description "Log level permitted to output."; } leaf enable-trap { ext:dynamic-default; type boolean; description "Enable/disable the alarm output function."; } leaf enable-trap-level { type log-level; default "debugging"; description "Trap level permitted to output."; } leaf enable-debug { ext:dynamic-default; type boolean; description "Enable/disable the debug output function."; } leaf enable-debug-level { type log-level; default "debugging"; description "Debug level permitted to output."; } } // list info-center-source } // container info-center-sources container log-switch-list { description "Configure the log switch."; list log-switch { ext:generated-by "system"; ext:operation-exclude "create"; key "feature-name log-name"; max-elements 65535; description "Configure log switch."; leaf feature-name { type string { length "1..31"; } description "Feature name of a log."; } leaf log-name { type string { length "1..63"; } description "Log name."; } leaf log-level { ext:dynamic-default; type log-level; description "Log level."; } leaf security-log-flag { type boolean; config false; description "Enable/disable flag of security log."; } leaf log-type { type log-type; config false; description "Log Type."; } } // list log-switch } // container log-switch-list container info-center-filters { description "List of info-center filter."; list info-center-filter { key "feature-name filter-log-name"; max-elements 65535; description "Configure filter item."; leaf feature-name { type leafref { path "/syslog:syslog/syslog:log-switch-list/syslog:log-switch/syslog:feature-name"; } description "Feature name of the filtered log."; } leaf filter-log-name { type leafref { path "/syslog:syslog/syslog:log-switch-list/syslog:log-switch/syslog:log-name"; } description "Name of the filtered log."; } } // list info-center-filter } // container info-center-filters container domain-servers { description "List of domain syslog servers."; list domain-server { key "server-domain is-default-vpn vrf-name"; max-elements 8; description "Configure the domain log server that receives logs."; leaf server-domain { type string { length "1..255"; } description "Log server domain address."; } leaf is-default-vpn { type boolean; description "Enable/disable the default VPN."; } leaf vrf-name { type leafref { path "/ni:network-instance/ni:instances/ni:instance/ni:name"; } must "not(../is-default-vpn='true') or (../is-default-vpn='true' and ../vrf-name='_public_')"; description "VPN name on a log server."; } leaf level { type log-level; default "debugging"; description "Level of logs saved on a log server."; } leaf server-port { type uint32 { range "1..65535"; } default "514"; description "Number of a port recving logs."; } leaf facility { type loghost-facility; default "local7"; description "Log record tool."; } leaf channel-id { type leafref { path "/syslog:syslog/syslog:info-center-channels/syslog:info-center-channel/syslog:channel-id"; } default "2"; description "Channel number."; } leaf channel-name { type string { length "1..30"; } default "loghost"; config false; description "Channel name."; } leaf timestamp { type timestamp-format; default "UTC"; description "Log server timestamp."; } leaf transport-mode { type transport-mode-type; default "udp"; description "Transport mode."; } leaf ssl-policy-name { type leafref { path "/ssl:ssl/ssl:ssl-policys/ssl:ssl-policy/ssl:policy-name"; } must "../transport-mode='tcp'"; description "SSL policy name."; } leaf source-ip { ext:support-filter "true"; type inet:ipv4-address-no-zone; description "Syslog source IP address."; } leaf is-brief-format { type boolean; default "false"; description "Enable/disable Syslog Brief Format."; } leaf is-security-only { type boolean; must "../is-security-only='false' or (../is-security-only='true' and ../ssl-policy-name)"; default "false"; description "Enable/disable Syslog support security log."; } leaf dns-identifier-name { type string { length "1..255"; } must "../transport-mode='tcp' and ../ssl-policy-name"; description "DNS Identifier Name."; } } // list domain-server } // container domain-servers container logfiles { description "List of log file info."; list logfile { ext:generated-by "system"; ext:operation-exclude "create|delete"; key "logfile-type"; max-elements 4; description "Specify Log file info."; leaf logfile-type { type logfile-type; description "Log file type."; } leaf max-file-num { ext:dynamic-default; type uint32 { range "1..500"; } must "(../logfile-type='debug' and (../max-file-num>=1 and ../max-file-num<=50)) or (../logfile-type!='debug' and (../max-file-num>=3 and ../max-file-num<=500))"; description "Maximum number of log files of the same type."; } leaf max-file-size { ext:dynamic-default; type uint32 { range "1..32"; } units "MB"; must "(../logfile-type='debug' and ../max-file-size='8') or ((../logfile-type='security' or ../logfile-type='operation') and (../max-file-size>=1 and ../max-file-size<=4))or (../logfile-type='log' and (../max-file-size='4' or ../max-file-size='8' or ../max-file-size='16' or ../max-file-size='32'))"; description "Maximum size (in MB) of a log file. The value range for log files is [4, 8, 16, 32], for security files is [1~4], and for operation files is [1~4]."; } } // list logfile } // container logfiles container direction-channels { description "List of mappings of output directions and channels of the information center."; list direction-channel { ext:generated-by "system"; ext:operation-exclude "create"; key "output-direction"; max-elements 7; description "Specify the relation of direction and channel."; leaf output-direction { type string { length "1..30"; } description "Direction of information output."; } leaf default-channel-id { type uint32 { range "0..9"; } config false; description "Number of the default channel."; } leaf channel-id { ext:dynamic-default; type leafref { path "/syslog:syslog/syslog:info-center-channels/syslog:info-center-channel/syslog:channel-id"; } description "Number of a configured channel."; } leaf channel-name { type string { length "1..30"; } config false; description "Name of a configured channel."; } } // list direction-channel } // container direction-channels container info-center-statistics { config false; description "List of info-center statistics."; list info-center-statistic { key "module-name"; description "Statistics of info-center item."; leaf module-name { type string { length "1..31"; } description "Module name of the log."; } leaf receive-log { type uint32; description "Number of received logs."; } leaf drop-log { type uint32; description "Number of dropped logs."; } leaf receive-diaglog { type uint32; description "Number of received diagnostic logs."; } leaf drop-diaglog { type uint32; description "Number of dropped diagnostic logs."; } leaf receive-eventtrap { type uint32; description "Number of received event traps."; } leaf drop-eventtrap { type uint32; description "Number of dropped event traps."; } leaf receive-debug { type uint32; description "Number of received debugging logs."; } leaf drop-debug { type uint32; description "Number of dropped debugging logs."; } } // list info-center-statistic } // container info-center-statistics container info-center-buffers { config false; description "List of the buffer statistics."; list info-center-buffer { key "buffer-name"; max-elements 2; description "Display buffer statistics."; leaf buffer-name { type string { length "1..31"; } description "Buffer name."; } leaf enable-flag { type boolean; default "true"; description "Enable/disable Buffer enable state."; } leaf max-buffer-size { type uint32 { range "1..10240"; } units "Byte"; description "Maximum buffer size."; } leaf cur-buffer-size { type uint32 { range "1..10240"; } units "Byte"; description "Configured buffer size."; } leaf current-message { type uint32; description "Number of existing messages in the buffer."; } leaf dropped-message { type uint32; description "Number of dropped messages in the buffer."; } leaf overwrite-message { type uint32; description "Number of overwritten messages in the buffer."; } leaf channel-id { type uint32 { range "0..9"; } default "0"; description "ID of channel bind to the buffer."; } leaf channel-name { type string { length "1..30"; } description "Name of channel bind to the buffer."; } } // list info-center-buffer } // container info-center-buffers container modules { config false; description "List of module name information."; list module { key "module-name"; description "Operational data of module name information item."; leaf module-name { type string { length "1..31"; } description "Module name."; } } // list module } // container modules container logbuffers { config false; description "List of of log buffer."; list logbuffer { key "sequence"; description "Statistics of log buffer item."; leaf sequence { type int32 { range "1..102400"; } description "Sequence number of a queried log."; } leaf starttime { ext:support-filter "true"; type yang:date-and-time; description "Query start time. The valid value range is after 1970-01-01."; } leaf endtime { ext:support-filter "true"; type yang:date-and-time; description "Query end time. The valid value range is after 1970-01-01."; } leaf level { ext:support-filter "true"; type log-level; description "Level of queried logs."; } leaf log-content { type string { length "0..1200"; } description "Content of queried logs."; } } // list logbuffer } // container logbuffers container trapbuffers { config false; description "List of trap buffer table."; list trapbuffer { key "sequence"; description "Statistics of trap buffer item."; leaf sequence { type int32 { range "1..1024"; } description "Sequence number of a queried trap."; } leaf trap-content { type string { length "0..1200"; } description "Content of query trap."; } } // list trapbuffer } // container trapbuffers container securitybuffers { config false; description "List of security of a log buffer."; list securitybuffer { key "sequence"; description "Operational data of the security of a log buffer item."; leaf sequence { type int32 { range "1..102400"; } description "Sequence number of a queried log."; } leaf starttime { ext:support-filter "true"; type yang:date-and-time; description "Query start time. The valid value range is after 1970-01-01."; } leaf endtime { ext:support-filter "true"; type yang:date-and-time; description "Query end time. The valid value range is after 1970-01-01."; } leaf level { ext:support-filter "true"; type log-level; description "Level of queried logs."; } leaf log-content { type string { length "0..1200"; } description "Content of queried logs."; } } // list securitybuffer } // container securitybuffers container logfile-prefixs { description "List of log file prefix."; list logfile-prefix { key "type name"; max-elements 1; description "Specify Log file prefixs."; leaf type { type prefix-file-type; description "Log file type."; } leaf name { type string { length "1..16"; pattern '[a-zA-Z0-9]*'; } description "File name."; } } // list logfile-prefix } // container logfile-prefixs container collect-log-process { config false; description "Operational data of diagnostic information collecting progress."; leaf state { type log-operation-state; description "Operation result."; } leaf operate-progress { type pub-type:percent; description "Operation progress."; } } // container collect-log-process container log-storage-time { description "Configure log storage time."; leaf storage-time { type uint32 { range "180..1095"; } units "d"; description "Log storage time."; } } // container log-storage-time container loginfos { config false; description "List of of logs."; list loginfo { key "feature-name log-type"; description "Operational data of log."; leaf feature-name { type leafref { path "/syslog:syslog/syslog:log-switch-list/syslog:log-switch/syslog:feature-name"; } description "Feature name of log."; } leaf log-type { type report-log-type; description "Log type."; } leaf sequence { type uint32 { range "1..4294967295"; } description "Sequence number of log."; } leaf log-id { type uint32 { range "1..4294967295"; } description "Log index."; } leaf log-content { type string { length "0..8447"; } description "Content of queried logs."; } } // list loginfo } // container loginfos } // container syslog rpc save-logfile { description "Save logs to file."; input { leaf log-type { type save-log-type; mandatory true; description "Log type."; } } } // rpc save-logfile rpc collect-log { description "Collect diagnostic information and upload log file."; input { choice server-type { mandatory true; description "Type of the protocol for uploading the log file."; case http { description "HTTP protocol."; leaf http-url { type string { length "1..255"; } description "The URL of the remote HTTP server."; } } // case http } // choice server-type leaf vpn-instance { type string { length "1..31"; } description "VPN instance name of the remote HTTP server."; } leaf user-name { type string { length "1..127"; } description "Specifies the authentication user name for file transfer."; } leaf password { type pub-type:password-extend; description "Specifies the authentication password for file transfer."; } leaf ssl-policy-name { type leafref { path "/ssl:ssl/ssl:ssl-policys/ssl:ssl-policy/ssl:policy-name"; } must "../http-url"; description "SSL policy name."; } } } // rpc collect-log } // module huawei-syslog
© 2023 YumaWorks, Inc. All rights reserved.