cisco.nxos.nxos_logging_global (7.0.0) — module

Logging resource module.

| "added in version" 2.5.0 of cisco.nxos"

Authors: Nilashish Chakraborty (@NilashishC)

Install collection

Install with ansible-galaxy collection install cisco.nxos:==7.0.0


Add to requirements.yml

  collections:
    - name: cisco.nxos
      version: 7.0.0

Description

This module manages logging configuration on devices running Cisco NX-OS.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Using merged

# Before state:
# -------------
# nxos-9k-rdo# show running-config | include logging
# nxos-9k-rdo#

- name: Merge the provided configuration with the existing running configuration
  cisco.nxos.nxos_logging_global:
    config:
      console:
        severity: error
      monitor:
        severity: warning
      ip:
        access_list:
          cache:
            entries: 16384
            interval: 200
            threshold: 5000
      facilities:
        - facility: auth
          severity: critical
        - facility: ospfv3
          severity: alert
        - facility: ftp
          severity: informational
      hosts:
        - host: 203.0.113.100
          severity: alert
          use_vrf: management
        - host: 203.0.113.101
          severity: error
          facility: local6
          use_vrf: default
      origin_id:
        hostname: true
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Task output
# -------------
#  before: {}
#
#  commands:
#    - "logging console 3"
#    - "logging monitor 4"
#    - "logging ip access-list cache entries 16384"
#    - "logging ip access-list cache interval 200"
#    - "logging ip access-list cache threshold 5000"
#    - "logging severity auth 2"
#    - "logging severity ospfv3 1"
#    - "logging severity ftp 6"
#    - "logging server 203.0.113.100 1 use-vrf management"
#    - "logging server 203.0.113.101 3 facility local6 use-vrf default"
#    - "logging origin-id hostname"
#
# after:
#   console:
#      severity: error
#    facilities:
#      - facility: auth
#        severity: critical
#      - facility: ftp
#        severity: informational
#      - facility: ospfv3
#        severity: alert
#    ip:
#      access_list:
#        cache:
#          entries: 16384
#          interval: 200
#          threshold: 5000
#    monitor:
#      severity: warning
#    origin_id:
#      hostname: true
#    hosts:
#      - severity: alert
#        host: 203.0.113.100
#        use_vrf: management
#      - facility: local6
#        severity: error
#        host: 203.0.113.101
#        use_vrf: default

# After state:
# ------------
# nxos-9k-rdo# show running-config | include logging
# logging console 3
# logging monitor 4
# logging ip access-list cache entries 16384
# logging ip access-list cache interval 200
# logging ip access-list cache threshold 5000
# logging severity auth 2
# logging severity ospfv3 1
# logging severity ftp 6
# logging origin-id hostname
# logging server 203.0.113.100 1 use-vrf management
# logging server 203.0.113.101 3 use-vrf default facility local6

# Using replaced

# Before state:
# ------------
# nxos-9k-rdo# show running-config | include logging
# logging console 3
# logging monitor 4
# logging ip access-list cache entries 16384
# logging ip access-list cache interval 200
# logging ip access-list cache threshold 5000
# logging severity auth 2
# logging severity ospfv3 1
# logging severity ftp 6
# logging origin-id hostname
# logging server 203.0.113.100 1 use-vrf management
# logging server 203.0.113.101 3 use-vrf default facility local6

- name: Replace logging configurations with provided config
  cisco.nxos.nxos_logging_global:
    config:
      monitor:
        severity: warning
      ip:
        access_list:
          cache:
            entries: 4096
      facilities:
        - facility: auth
          severity: critical
        - facility: ospfv3
          severity: alert
        - facility: ftp
          severity: informational
      hosts:
        - host: 203.0.113.101
          severity: error
          facility: local6
          use_vrf: default
        - host: 198.51.100.101
          severity: alert
          port: 6538
          use_vrf: management
      origin_id:
        ip: 192.0.2.100
    state: replaced
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Task output
# -------------
# before:
#   console:
#      severity: error
#    facilities:
#      - facility: auth
#        severity: critical
#      - facility: ftp
#        severity: informational
#      - facility: ospfv3
#        severity: alert
#    ip:
#      access_list:
#        cache:
#          entries: 16384
#          interval: 200
#          threshold: 5000
#    monitor:
#      severity: warning
#    origin_id:
#      hostname: true
#    hosts:
#      - severity: alert
#        host: 203.0.113.100
#        use_vrf: management
#      - facility: local6
#        severity: error
#        host: 203.0.113.101
#        use_vrf: default
#
# commands:
#   - "logging console"
#   - "logging ip access-list cache entries 4096"
#   - "no logging ip access-list cache interval 200"
#   - "no logging ip access-list cache threshold 5000"
#   - "no logging origin-id hostname"
#   - "logging origin-id ip 192.0.2.100"
#   - "logging server 198.51.100.101 1 port 6538 use-vrf management"
#   - "no logging server 203.0.113.100 1 use-vrf management"
#
#  after:
#    facilities:
#      - facility: auth
#        severity: critical
#      - facility: ftp
#        severity: informational
#      - facility: ospfv3
#        severity: alert
#    ip:
#      access_list:
#        cache:
#          entries: 4096
#    monitor:
#      severity: warning
#    origin_id:
#      ip: 192.0.2.100
#    hosts:
#      - severity: alert
#        port: 6538
#        host: 198.51.100.101
#        use_vrf: management
#      - facility: local6
#        severity: error
#        host: 203.0.113.101
#        use_vrf: default
#
# After state:
# ------------
# nxos-9k-rdo# show running-config | include logging
# logging monitor 4
# logging ip access-list cache entries 4096
# logging severity auth 2
# logging severity ospfv3 1
# logging severity ftp 6
# logging origin-id ip 192.0.2.100
# logging server 203.0.113.101 3 use-vrf default facility local6
# logging server 198.51.100.101 1 port 6538 use-vrf management

# Using deleted to delete all logging configurations

# Before state:
# ------------
# nxos-9k-rdo# show running-config | include logging
# logging console 3
# logging monitor 4
# logging ip access-list cache entries 16384
# logging ip access-list cache interval 200
# logging ip access-list cache threshold 5000
# logging severity auth 2
# logging severity ospfv3 1
# logging severity ftp 6
# logging origin-id hostname
# logging server 203.0.113.100 1 use-vrf management
# logging server 203.0.113.101 3 use-vrf default facility local6

- name: Delete all logging configuration
  cisco.nxos.nxos_logging_global:
    state: deleted
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Task output
# -------------
# before:
#   console:
#      severity: error
#    facilities:
#      - facility: auth
#        severity: critical
#      - facility: ftp
#        severity: informational
#      - facility: ospfv3
#        severity: alert
#    ip:
#      access_list:
#        cache:
#          entries: 16384
#          interval: 200
#          threshold: 5000
#    monitor:
#      severity: warning
#    origin_id:
#      hostname: true
#    hosts:
#      - severity: alert
#        host: 203.0.113.100
#        use_vrf: management
#      - facility: local6
#        severity: error
#        host: 203.0.113.101
#        use_vrf: default
#
# commands:
#   - "logging console"
#   - "logging monitor"
#   - "no logging ip access-list cache entries 16384"
#   - "no logging ip access-list cache interval 200"
#   - "no logging ip access-list cache threshold 5000"
#   - "no logging origin-id hostname"
#   - "no logging severity auth 2"
#   - "no logging severity ospfv3 1"
#   - "no logging severity ftp 6"
#   - "no logging server 203.0.113.100 1 use-vrf management"
#   - "no logging server 203.0.113.101 3 facility local6 use-vrf default"
#
# after: {}

# Using rendered

- name: Render platform specific configuration lines with state rendered (without connecting to the device)
  cisco.nxos.nxos_logging_global:
    config:
      console:
        severity: error
      monitor:
        severity: warning
      ip:
        access_list:
          cache:
            entries: 16384
            interval: 200
            threshold: 5000
      facilities:
        - facility: auth
          severity: critical
        - facility: ospfv3
          severity: alert
        - facility: ftp
          severity: informational
      hosts:
        - host: 203.0.113.100
          severity: alert
          use_vrf: management
        - host: 203.0.113.101
          severity: error
          facility: local6
          use_vrf: default
      origin_id:
        hostname: true
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
# Task Output (redacted)
# -----------------------
#  rendered:
#    - "logging console 3"
#    - "logging monitor 4"
#    - "logging ip access-list cache entries 16384"
#    - "logging ip access-list cache interval 200"
#    - "logging ip access-list cache threshold 5000"
#    - "logging severity auth 2"
#    - "logging severity ospfv3 1"
#    - "logging severity ftp 6"
#    - "logging server 203.0.113.100 1 use-vrf management"
#    - "logging server 203.0.113.101 3 facility local6 use-vrf default"
#    - "logging origin-id hostname"

# Using parsed

# parsed.cfg
# ------------
# logging console 3
# logging monitor 4
# logging ip access-list cache entries 16384
# logging ip access-list cache interval 200
# logging ip access-list cache threshold 5000
# logging severity auth 2
# logging severity ospfv3 1
# logging severity ftp 6
# logging origin-id hostname
# logging server 203.0.113.100 1 use-vrf management
# logging server 203.0.113.101 3 use-vrf default facility local6

- name: Parse externally provided logging configuration
  cisco.nxos.nxos_logging_global:
    running_config: "{{ lookup('file', './fixtures/parsed.cfg') }}"
    state: parsed

Inputs

    
state:
    choices:
    - merged
    - replaced
    - overridden
    - deleted
    - parsed
    - gathered
    - rendered
    default: merged
    description:
    - The state the configuration should be left in.
    - The states I(replaced) and I(overridden) have identical behaviour for this module.
    - Refer to examples for more details.
    type: str

config:
    description: A dictionary of logging configuration.
    suboptions:
      console:
        description: Set console logging parameters.
        suboptions:
          severity:
            choices:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notification
            - informational
            - debugging
            description: Set severity severity for console.
            type: str
          state:
            choices:
            - enabled
            - disabled
            description: Enable or disable monitor logging.
            type: str
        type: dict
      event:
        description: Interface events.
        suboptions:
          link_status:
            description: UPDOWN and CHANGE messages.
            suboptions:
              default:
                description: Default logging configuration used by interfaces not explicitly
                  configured.
                type: bool
              enable:
                description: To enable logging overriding port severity configuration.
                type: bool
            type: dict
          trunk_status:
            description: TRUNK status messages.
            suboptions:
              default:
                description: Default logging configuration used by interfaces not explicitly
                  configured.
                type: bool
              enable:
                description: To enable logging overriding port severity configuration.
                type: bool
            type: dict
        type: dict
      facilities:
        description: Facility parameter for syslog messages.
        elements: dict
        suboptions:
          facility:
            description: Facility name.
            type: str
          severity:
            choices:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notification
            - informational
            - debugging
            description: Set severity severity for console.
            type: str
        type: list
      history:
        description: Modifies severity severity or size for history table.
        suboptions:
          severity:
            choices:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notification
            - informational
            - debugging
            description: Set severity severity for console.
            type: str
          size:
            description: Set history table size.
            type: int
        type: dict
      hosts:
        description: Enable forwarding to Remote Syslog Servers.
        elements: dict
        suboptions:
          facility:
            description: Facility to use when forwarding to server.
            type: str
          host:
            description: Hostname/IPv4/IPv6 address of the Remote Syslog Server.
            type: str
          port:
            description: Destination Port when forwarding to remote server.
            type: int
          secure:
            description: Enable secure connection to remote server.
            suboptions:
              trustpoint:
                description: Trustpoint configuration.
                suboptions:
                  client_identity:
                    description:
                    - Client Identity certificate for mutual authentication.
                    - Trustpoint to use for client certificate authentication.
                    type: str
                type: dict
            type: dict
          severity:
            choices:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notification
            - informational
            - debugging
            description: Set severity severity for console.
            type: str
          use_vrf:
            description:
            - Display per-VRF information.
            - This option is unsupported on MDS switches.
            type: str
        type: list
      ip:
        description:
        - IP configuration.
        - This option is unsupported on MDS switches.
        suboptions:
          access_list:
            description: Access-List.
            suboptions:
              cache:
                description: Set caching settings.
                suboptions:
                  entries:
                    description: Maximum number of log entries cached in software.
                    type: int
                  interval:
                    description: Log-update interval (in sec).
                    type: int
                  threshold:
                    description: Log-update threshold (number of hits)
                    type: int
                type: dict
              detailed:
                description: Detailed ACL information.
                type: bool
              include:
                description: Include additional fields in syslogs.
                suboptions:
                  sgt:
                    description: Include source group tag info in syslogs.
                    type: bool
                type: dict
            type: dict
        type: dict
      logfile:
        description: Set file logging.
        suboptions:
          name:
            description: Logfile name.
            type: str
          persistent_threshold:
            description:
            - Set persistent logging utilization alert threshold in percentage.
            - This option is unsupported on MDS switches.
            type: int
          severity:
            choices:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notification
            - informational
            - debugging
            description: Set severity severity for console.
            type: str
          size:
            description: Enter the logfile size in bytes.
            type: int
          state:
            choices:
            - enabled
            - disabled
            description: Enable or disable logfile.
            type: str
        type: dict
      module:
        description: Set module(linecard) logging.
        suboptions:
          severity:
            choices:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notification
            - informational
            - debugging
            description: Set severity severity for console.
            type: str
          state:
            choices:
            - enabled
            - disabled
            description: Enable or disable module logging.
            type: str
        type: dict
      monitor:
        description: Set terminal line(monitor) logging severity.
        suboptions:
          severity:
            choices:
            - emergency
            - alert
            - critical
            - error
            - warning
            - notification
            - informational
            - debugging
            description: Set severity severity for console.
            type: str
          state:
            choices:
            - enabled
            - disabled
            description: Enable or disable monitor logging.
            type: str
        type: dict
      origin_id:
        description: Enable origin information for Remote Syslog Server.
        suboptions:
          hostname:
            description:
            - Use hostname as origin-id of logging messages.
            - This option is mutually exclusive with I(ip) and I(string).
            type: bool
          ip:
            description:
            - Use ip address as origin-id of logging messages.
            - This option is mutually exclusive with I(hostname) and I(string).
            type: str
          string:
            description:
            - Use text string as origin-id of logging messages.
            - This option is mutually exclusive with I(hostname) and I(ip).
            type: str
        type: dict
      rate_limit:
        choices:
        - enabled
        - disabled
        description: Enable or disable rate limit for log messages.
        type: str
      rfc_strict:
        description:
        - Set RFC to which messages should compliant.
        - Syslogs will be compliant to RFC 5424.
        - This option is unsupported on MDS switches.
        type: bool
      source_interface:
        description:
        - Enable Source-Interface for Remote Syslog Server.
        - This option is unsupported on MDS switches.
        type: str
      timestamp:
        choices:
        - microseconds
        - milliseconds
        - seconds
        description: Set logging timestamp granularity.
        type: str
    type: dict

running_config:
    description:
    - This option is used only with state I(parsed).
    - The value of this option should be the output received from the NX-OS device by
      executing the command B(show running-config | include logging).
    - The state I(parsed) reads the configuration from C(running_config) option and transforms
      it into Ansible structured data as per the resource module's argspec and the value
      is then returned in the I(parsed) key within the result.
    type: str

Outputs

after:
  description: The resulting configuration after module execution.
  returned: when changed
  sample: 'This output will always be in the same format as the module argspec.

    '
  type: dict
before:
  description: The configuration prior to the module execution.
  returned: when state is I(merged), I(replaced), I(overridden), I(deleted) or I(purged)
  sample: 'This output will always be in the same format as the module argspec.

    '
  type: dict
commands:
  description: The set of commands pushed to the remote device.
  returned: when state is I(merged), I(replaced), I(overridden), I(deleted) or I(purged)
  sample:
  - logging console 3
  - logging monitor 4
  - logging ip access-list cache entries 16384
  - logging ip access-list cache interval 200
  - logging ip access-list cache threshold 5000
  type: list
gathered:
  description: Facts about the network resource gathered from the remote device as
    structured data.
  returned: when state is I(gathered)
  sample: 'This output will always be in the same format as the module argspec.

    '
  type: list
parsed:
  description: The device native config provided in I(running_config) option parsed
    into structured data as per module argspec.
  returned: when state is I(parsed)
  sample: 'This output will always be in the same format as the module argspec.

    '
  type: list
rendered:
  description: The provided configuration in the task rendered in device-native format
    (offline).
  returned: when state is I(rendered)
  sample:
  - logging ip access-list cache entries 4096
  - no logging ip access-list cache interval 200
  - no logging ip access-list cache threshold 5000
  - no logging origin-id hostname
  - logging origin-id ip 192.0.2.100
  - logging server 198.51.100.101 1 port 6538 use-vrf management
  type: list