draft-ietf-netmod-syslog-model-05.txt   draft-ietf-netmod-syslog-model-06.txt 
NETMOD WG Clyde Wildes NETMOD WG Clyde Wildes
Internet-Draft Kiran Koushik Internet-Draft Kiran Koushik
Intended status: Informational Cisco Systems Inc. Intended status: Informational Cisco Systems Inc.
Expires: Apr 16, 2016 Oct 16, 2015 Expires: Jun 16, 2016 Dec 23, 2015
SYSLOG YANG model SYSLOG YANG model
draft-ietf-netmod-syslog-model-05 draft-ietf-netmod-syslog-model-06
Abstract Abstract
This document describes a data model for Syslog This document describes a data model for Syslog
protocol which is used to convey event notification messages. protocol which is used to convey event notification messages.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
skipping to change at page 1, line 30 skipping to change at page 1, line 30
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on Jan 06, 2016. This Internet-Draft will expire on Jun 16, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 2, line 47 skipping to change at page 2, line 47
acknowledgement of the receipt is made. acknowledgement of the receipt is made.
Essentially, a Syslog process receives messages (from the kernel, Essentially, a Syslog process receives messages (from the kernel,
processes, applications or other Syslog processes) and processes processes, applications or other Syslog processes) and processes
those. The processing involves logging to a local file, displaying on those. The processing involves logging to a local file, displaying on
console, user terminal, and/or relaying to syslog processes on other console, user terminal, and/or relaying to syslog processes on other
machines. The processing is determined by the "facility" that machines. The processing is determined by the "facility" that
originated the message and the "severity" assigned to the message by originated the message and the "severity" assigned to the message by
the facility. the facility.
We are using definitions of Syslog protocol from [RFC3164] in this We are using definitions of Syslog protocol from [RFC5424] in this
draft. draft.
1.1. Definitions and Acronyms 1.1. Definitions and Acronyms
IP: Internet Protocol IP: Internet Protocol
IPv4: Internet Protocol version 4 IPv4: Internet Protocol version 4
IPv6: Internet Protocol version 6 IPv6: Internet Protocol version 6
skipping to change at page 4, line 22 skipping to change at page 4, line 22
| SNMP | | Interface | | Standby | | Syslog | | SNMP | | Interface | | Standby | | Syslog |
| Events | | Events | | Supervisor | | Itself | | Events | | Events | | Supervisor | | Itself |
+-------------+ +-------------+ +-------------+ +-------------+ +-------------+ +-------------+ +-------------+ +-------------+
| | | |
+----------------------------------------------------------------+ +----------------------------------------------------------------+
| |
| |
| |
| |
+------------+------------+------------+-----------+ +-----------+------------+--------------+
| | | | | | | | |
v v v v v v v v |
Message Distributors Message Distributors |
+----------+ +----------+ +----------+ +----------+ +----------+ +----------+ +----------+ +----------+ |
| | | Log | | Log | | User | | Remote | | | | Log | | Log | |
| Console | | Buffer | | File(s) | | Terminals| | Servers| | Console | | Buffer(s)| | File(s) | |
+----------+ +----------+ +----------+ +----------+ +----------+ +----------+ +----------+ +----------+ |
+-------------+-------------+
| | |
v v v
The leaves in the base syslog model correspond to the group level +-------------+ +-----------+ +-----------+
|Remote | | | |User |
|Collectors(s)| |Terminal(s)| |Sessions(s)|
+-------------+ +-----------+ +-----------+
The leaves in the base syslog model correspond to the group level
suppression filter and each message distributor: suppression filter and each message distributor:
- console - console
- log buffer - log buffer(s)
- log file(s) - log file(s)
- user terminals - remote collector(s)
- remote server(s). - terminal(s)
- user session(s).
Optional features are used to specified fields that are not present in Optional features are used to specified fields that are not present in
all vendor configurations. all vendor configurations.
3.1. SYSLOG Module 3.1. SYSLOG Module
A simplified graphical representation of the complete data tree is
presented here.
Each node is printed as:
<status> <flags> <name> <opts> <type> <if-features>
<status> is one of:
+ for current
x for deprecated
o for obsolete
<flags> is one of:
rw for configuration data
ro for non-configuration data
-x for rpcs
-n for notifications
<name> is the name of the node
(<name>) means that the node is a choice node
:(<name>) means that the node is a case node
If the node is augmented into the tree from another module, its
name is printed as <prefix>:<name>.
<opts> is one of:
? for an optional leaf or choice
! for a presence container
* for a leaf-list or list
[<keys>] for a list's keys
<type> is the name of the type for leafs and leaf-lists
If the type is a leafref, the type is printed as "-> TARGET", where
TARGET is either the leafref path, with prefixed removed if possible.
<if-features> is the list of features this node depends on, printed
within curly brackets and a question mark "{...}?"
module: ietf-syslog module: ietf-syslog
+--rw syslog +--rw syslog
+--rw log-actions +--rw log-actions
+--rw console! +--rw console!
| +--rw log-selector | +--rw log-selector
| +--rw (selector-facility) | +--rw (selector-facility)
| | +--:(no-log-facility) | | +--:(no-log-facility)
| | | +--rw no-facilities? empty | | | +--rw no-facilities? empty
| | +--:(log-facility) | | +--:(log-facility)
| | +--rw log-facility* [facility] | | +--rw log-facility* [facility]
skipping to change at page 5, line 87 skipping to change at page 5, line 127
| +--rw source-interface? if:interface-ref | +--rw source-interface? if:interface-ref
| +--rw syslog-sign! {signed-messages-config}? | +--rw syslog-sign! {signed-messages-config}?
| +--rw cert-initial-repeat uint16 | +--rw cert-initial-repeat uint16
| +--rw cert-resend-delay uint16 | +--rw cert-resend-delay uint16
| +--rw cert-resend-count uint16 | +--rw cert-resend-count uint16
| +--rw sig-max-delay uint16 | +--rw sig-max-delay uint16
| +--rw sig-number-resends uint16 | +--rw sig-number-resends uint16
| +--rw sig-resend-delay uint16 | +--rw sig-resend-delay uint16
| +--rw sig-resend-count uint16 | +--rw sig-resend-count uint16
+--rw terminal +--rw terminal
| +--rw (terminal-scope)
| +--:(all-terminals)
| | +--rw all-terminals
| | +--rw log-selector
| | +--rw (selector-facility)
| | | +--:(no-log-facility)
| | | | +--rw no-facilities? empty
| | | +--:(log-facility)
| | | +--rw log-facility* [facility]
| | | +--rw facility union
| | | +--rw severity union
| | | +--rw severity-operator? enumeration {selector-severity-operator-config}?
| | +--rw pattern-match? string {selector-match-processing-config}?
| +--:(per-terminal) {terminal-facility-user-logging-config}?
| +--rw device-name* [dname]
| +--rw dname string
| +--rw log-selector
| +--rw (selector-facility)
| | +--:(no-log-facility)
| | | +--rw no-facilities? empty
| | +--:(log-facility)
| | +--rw log-facility* [facility]
| | +--rw facility union
| | +--rw severity union
| | +--rw severity-operator? enumeration {selector-severity-operator-config}?
| +--rw pattern-match? string {selector-match-processing-config}?
+--rw session
+--rw (user-scope) +--rw (user-scope)
+--:(all-users) +--:(all-users)
| +--rw all-users | +--rw all-users
| +--rw log-selector | +--rw log-selector
| +--rw (selector-facility) | +--rw (selector-facility)
| | +--:(no-log-facility) | | +--:(no-log-facility)
| | | +--rw no-facilities? empty | | | +--rw no-facilities? empty
| | +--:(log-facility) | | +--:(log-facility)
| | +--rw log-facility* [facility] | | +--rw log-facility* [facility]
| | +--rw facility union | | +--rw facility union
| | +--rw severity union | | +--rw severity union
| | +--rw severity-operator? enumeration {selector-severity-operator-config}? | | +--rw severity-operator? enumeration {selector-severity-operator-config}?
| +--rw pattern-match? string {selector-match-processing-config}? | +--rw pattern-match? string {selector-match-processing-config}?
+--:(per-user) {terminal-facility-user-logging-config}? +--:(per-user) {session-facility-user-logging-config}?
+--rw user-name* [uname] +--rw user-name* [uname]
+--rw uname string +--rw uname string
+--rw log-selector +--rw log-selector
+--rw (selector-facility) +--rw (selector-facility)
| +--:(no-log-facility) | +--:(no-log-facility)
| | +--rw no-facilities? empty | | +--rw no-facilities? empty
| +--:(log-facility) | +--:(log-facility)
| +--rw log-facility* [facility] | +--rw log-facility* [facility]
| +--rw facility union | +--rw facility union
| +--rw severity union | +--rw severity union
skipping to change at page 6, line 23 skipping to change at page 6, line 23
organization "IETF NETMOD (NETCONF Data Modeling Language) Working organization "IETF NETMOD (NETCONF Data Modeling Language) Working
Group"; Group";
contact contact
"WG Web: <http://tools.ietf.org/wg/netmod/> "WG Web: <http://tools.ietf.org/wg/netmod/>
WG List: <mailto:netmod@ietf.org> WG List: <mailto:netmod@ietf.org>
WG Chair: Tom Nadeau WG Chair: Tom Nadeau
<mailto:tnadeau@lucidvision.com> <mailto:tnadeau@lucidvision.com>
WG Chair: Kent Watson WG Chair: Kent Watsen
<mailto:kwatsen@juniper.net> <mailto:kwatsen@juniper.net>
Editor: Ladislav Lhotka Editor: Ladislav Lhotka
<mailto:lhotka@nic.cz>"; <mailto:lhotka@nic.cz>";
description description
"This module contains a collection of YANG type definitions for "This module contains a collection of YANG type definitions for
SYSLOG."; SYSLOG.";
revision 2015-10-14 { revision 2015-11-09 {
description description
"Initial Revision"; "Initial Revision";
reference reference
"This model references RFC 5424 - The Syslog Protocol, "This model references RFC 5424 - The Syslog Protocol,
and RFC 5848 - Signed Syslog Messages."; and RFC 5848 - Signed Syslog Messages.";
} }
typedef severity { typedef severity {
type enumeration { type enumeration {
enum "emergency" { enum "emergency" {
skipping to change at page 10, line 32 skipping to change at page 10, line 32
organization "IETF NETMOD (NETCONF Data Modeling Language) organization "IETF NETMOD (NETCONF Data Modeling Language)
Working Group"; Working Group";
contact contact
"WG Web: <http://tools.ietf.org/wg/netmod/> "WG Web: <http://tools.ietf.org/wg/netmod/>
WG List: <mailto:netmod@ietf.org> WG List: <mailto:netmod@ietf.org>
WG Chair: Tom Nadeau WG Chair: Tom Nadeau
<mailto:tnadeau@lucidvision.com> <mailto:tnadeau@lucidvision.com>
WG Chair: Kent Watson WG Chair: Kent Watsen
<mailto:kwatsen@juniper.net> <mailto:kwatsen@juniper.net>
Editor: Ladislav Lhotka Editor: Ladislav Lhotka
<mailto:lhotka@nic.cz>"; <mailto:lhotka@nic.cz>";
description description
"This module contains a collection of YANG definitions "This module contains a collection of YANG definitions
for Syslog configuration."; for Syslog configuration.";
revision 2015-10-14 { revision 2015-11-09 {
description description
"Initial Revision"; "Initial Revision";
reference reference
"RFC 5424: The Syslog Protocol "RFC 5424: The Syslog Protocol
RFC 5848: Signed Syslog Messages"; RFC 5848: Signed Syslog Messages";
} }
feature buffer-limit-bytes { feature buffer-limit-bytes {
description description
"This feature indicates that local memory logging buffers "This feature indicates that local memory logging buffers
skipping to change at page 11, line 19 skipping to change at page 11, line 19
feature file-limit-duration { feature file-limit-duration {
description description
"This feature indicates that file logging resources "This feature indicates that file logging resources
are managed using time based limits."; are managed using time based limits.";
} }
feature terminal-facility-user-logging-config { feature terminal-facility-user-logging-config {
description description
"This feature represents the ability to adjust "This feature represents the ability to adjust
log message settings for individual terminal users."; log message settings for individual terminal
devices.";
}
feature session-facility-user-logging-config {
description
"This feature represents the ability to adjust
log message settings for individual user sessions.";
} }
feature selector-severity-operator-config { feature selector-severity-operator-config {
description description
"This feature represents the ability to select messages "This feature represents the ability to select messages
using the additional operators equal to, or not equal to using the additional operators equal to, or not equal to
when comparing the Syslog message severity."; when comparing the Syslog message severity.";
} }
feature selector-match-processing-config { feature selector-match-processing-config {
skipping to change at page 18, line 39 skipping to change at page 18, line 39
since the previous sending of this Signature since the previous sending of this Signature
Block, resend it."; Block, resend it.";
} }
} }
} }
} }
container terminal { container terminal {
description description
"This container describes the configuration parameters for "This container describes the configuration parameters for
the terminal logging configuration."; the terminal logging configuration.";
choice terminal-scope {
mandatory true;
description
"This choice describes the option to specify all
terminals or a specific terminal. The all terminals
case implies that messages will be sent to all
sessions on that terminal";
case all-terminals {
description
"This case specifies all terminals.";
container all-terminals {
description
"This container describes the configuration
parameters for all terminals.";
uses syslog-selector;
}
}
case per-terminal {
if-feature terminal-facility-user-logging-config;
description
"This case specifies one or more terminals.";
list device-name {
key "dname";
description
"This list describes a collection of device names.";
leaf dname {
type string;
description
"This leaf uniquely describes a device name which
is the device to receive log messages.";
}
uses syslog-selector;
}
}
}
}
container session {
description
"This container describes the configuration parameters for
session logging configuration.";
choice user-scope { choice user-scope {
mandatory true; mandatory true;
description description
"This choice describes the option to specify all users "This choice describes the option to specify all users
or a specific user. The all users case implies that or a specific user. The all users case implies that
messages will be sent to all terminals"; messages will be sent to all sessions";
case all-users { case all-users {
description description
"This case specifies all users."; "This case specifies all users.";
container all-users { container all-users {
description description
"This container describes the configuration "This container describes the configuration
parameters for all users."; parameters for all users.";
uses syslog-selector; uses syslog-selector;
} }
} }
case per-user { case per-user {
if-feature terminal-facility-user-logging-config; if-feature session-facility-user-logging-config;
description description
"This case specifies a specific user."; "This case specifies a specific user.";
list user-name { list user-name {
key "uname"; key "uname";
description description
"This list describes a collection of user names."; "This list describes a collection of user names.";
leaf uname { leaf uname {
type string; type string;
description description
"This leaf uniquely describes a user name which "This leaf uniquely describes a user name which
is the login name of the user whose terminal is the login name of the user whose session
session is to receive log messages."; is to receive log messages.";
} }
uses syslog-selector; uses syslog-selector;
} }
} }
} }
} }
} }
} }
} }
skipping to change at page 20, line 47 skipping to change at page 20, line 47
Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
Jason Sterne <jason.sterne@alcatel-lucent.com> Jason Sterne <jason.sterne@alcatel-lucent.com>
Peter Van Horne <petervh@cisco.com> Peter Van Horne <petervh@cisco.com>
Bert Wijnen <bertietf@bwijnen.net> Bert Wijnen <bertietf@bwijnen.net>
Aleksandr Zhdankin <azhdanki@cisco.com> Aleksandr Zhdankin <azhdanki@cisco.com>
9. Change log [RFC Editor: Please remove] 9. Change log [RFC Editor: Please remove]
10. References 10. References
[RFC3164] Lonvick, C., "The BSD syslog Protocol", BCP 81, RFC 3164, [RFC5424] Gerhards, R., "The Syslog Protocol", BCP 78, RFC 5424,
August 2001. March 2009.
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688, [RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
March 2204. March 2004.
[RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the [RFC6020] Bjorklund, M., "YANG - A Data Modeling Language for the
Network Configuration Protocol (NETCONF)", RFC 6020, Network Configuration Protocol (NETCONF)", RFC 6020,
October 2010. October 2010.
[RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., and A. [RFC6241] Enns, R., Bjorklund, M., Schoenwaelder, J., and A.
Bierman, "Network Configuration Protocol (NETCONF)", RFC Bierman, "Network Configuration Protocol (NETCONF)", RFC
6241, June 2011. 6241, June 2011.
[RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure [RFC6242] Wasserman, M., "Using the NETCONF Protocol over Secure
 End of changes. 22 change blocks. 
29 lines changed or deleted 152 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/