Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Example: Configuring an Event Policy to Upload Files

 

This example configures event policy actions that upload relevant files to a specified location for analysis.

Requirements

Before you begin:

Overview

When an event policy action generates output files, you can archive the files for later analysis. Similarly, you might want to archive system files, including system log files, core files, and configuration files, from the time an event occurs. You can configure an event policy to upload existing system files or to upload the output files generated from an invoked event-script or command at the time an event occurs. This section outlines the configuration required for uploading each of these file types using an event policy.

When you configure an event policy to upload files, the relevant files are uploaded to the location referenced in the destination statement configured for that event policy action. You must specify a destination name that is configured at the [edit event-options destinations] hierarchy level.

To upload system files to a configured archive site, configure the upload statement at the [edit event-options policy policy-name then] hierarchy level. If the configured events occur, the eventd process executes the upload action.

The upload filename committed destination destination-name statement uploads the committed configuration file.

If desired, you can include multiple upload statements, one for each type of file to be archived. In the filename statement, specify a file or multiple files to be uploaded. You can specify multiple files with one filename configuration statement (sometimes called filename globbing). For example, to upload all files that are located in the /var/log directory and that start with the string "messages", include the following statement:

When an event policy executes commands in response to an event, you can write the command output to a file. To configure an event policy to upload the generated output file to a configured archive site, include the following statements at the [edit event-options policy policy-name then] hierarchy level:

When an event policy executes an event script in response to an event, you can write the script output to a file. To configure an event policy to upload the generated output file to a configured archive site, include the following statements at the [edit event-options policy policy-name then] hierarchy level:

The transfer-delay statement listed in each hierarchy defines the time interval that the system waits before uploading the files specified by that event policy action. If you have also configured a transfer delay for the destination at the [edit event-options destinations destination-name] hierarchy level, the total transfer delay is the sum of the two delays. For more detailed information about transfer delays, see Configuring the Delay Before Files Are Uploaded by an Event Policy.

If the first upload attempt fails, retry-count specifies the number of additional times the system attempts to upload the file. The retry-interval specifies the time interval that the system waits between upload attempts. For more information, see Configuring an Event Policy to Retry the File Upload Action.

The output-filename statement listed in each hierarchy is a descriptive string that is included in the filename.

When an event policy action uploads files, each uploaded file includes the hostname and timestamp in the filename to ensure that each filename is unique. If a policy is triggered multiple times in a 1-second period, an index number is appended to the filename to ensure that the filenames are still unique. The index number range is 001 through 999. The name of the file depends on the version of Junos OS running on the device. Prior to Junos OS Release 14.1R3, the filename has the following naming convention:

Starting in Junos OS Release 14.1R3, the filename has the following naming convention:

The output-filename string is either the name of an existing file or the value configured for the output-filename statement within the event policy then clause under the hierarchy for the appropriate event policy action.

For example, if you have an event policy action with output filename rpd-messages on device r1 running Junos OS Release 14.1R3 or a later release, and this event policy is executed three times in 1 second, the files are named as follows:

  • r1_20070623_132333_rpd-messages

  • r1_20070623_132333_rpd-messages_001

  • r1_20070623_132333_rpd-messages_002

In this example, policy1 consists of the following statements, where e1 is the triggering event. The example then configures the event policy to upload a log file and the committed configuration file as well as the output files generated from the execute-commands and event-script actions.

Configuration

CLI Quick Configuration

To quickly configure this example, copy the following commands, paste them in a text file, remove any line breaks, change any details necessary to match your network configuration, and then copy and paste the commands into the CLI at the [edit] hierarchy level:

Uploading System Files

Step-by-Step Procedure

Configure the event policy policy1 to upload the system file /var/log/messages to the archive sites mgmt-archives and mgmt-server. Additionally, upload the committed configuration to the archive site mgmt-archives. The destination archive sites should already be configured at the [edit event-options destinations] hierarchy level

  1. Configure the upload statement, and include the file to archive and the destination archive site.
  2. To upload the committed configuration file, specify the filename value as committed.
  3. (Optional) Configure the transfer delay associated with each file and destination.

    The following configuration mode command sets the transfer delay for the /var/log/messages file to 4 seconds when uploaded to the mgmt-archives destination. If you have also configured a transfer delay for the destination, the total delay is the sum of the two delays.

  4. (Optional) Configure the retry count and retry interval associated with a file and destination.

    In this example, if the /var/log/messages file fails to upload to the mgmt-archives site, the system attempts the upload up to 5 more times and waits 4 seconds in between each attempt.

  5. (Optional) Configure the username associated with a file and destination. The system uploads the file using the privileges of the specified user.
  6. Commit the configuration.

Uploading Command Output Files

Step-by-Step Procedure

When the event policy invokes the execute-commands action, the command output can be written to a file. Configure the event policy policy1 to write command output to a file and upload the generated file to the destination mgmt-archives, which is already configured at the [edit event-options destinations] hierarchy level.

  1. Configure the filename of the generated output file.
  2. Configure the destination statement to upload the generated file to the desired archive site.
  3. (Optional) Configure the transfer delay for each destination.

    The following command sets the transfer delay for files uploaded to the mgmt-archives destination to 5 seconds.

  4. (Optional) Configure the retry count and retry interval associated with each destination.

    In this example, if the output file fails to upload to the mgmt-archives site, the system attempts the upload up to 5 more times and waits 4 seconds in between each attempt.

  5. Commit the configuration.

Uploading Event Script Output Files

Step-by-Step Procedure

When the event policy invokes an event script, the script output can be written to a file. Configure the event policy policy1 to write event-script output to a file and upload the generated file to the destination mgmt-archives, which is already configured at the [edit event-options destinations] hierarchy level. In this example, the event policy invokes an event script named event-script1.

  1. Configure the filename of the generated output file.
  2. Configure the destination statement to upload the generated file to the desired archive site.
  3. (Optional) Configure the transfer delay for each destination.

    The following command sets the transfer delay for files uploaded to the mgmt-archives destination to 5 seconds.

  4. (Optional) Configure the retry count and retry interval associated with each destination.

    In this example, if the output file fails to upload to the mgmt-archives site, the system attempts the upload up to 5 more times and waits 4 seconds in between each attempt.

  5. Commit the configuration.

Results

Verification

Verifying the Upload

Purpose

When the configured event triggers the event policy, the system uploads the generated output files and the specified system files to the URL defined in the mgmt-archives destination. On the destination server, verify that all files have been uploaded.

Action

On the destination server, verify that all uploaded files are present.

% ls

Meaning

Note that the filename format for each file includes the device name, the filename, and the date and time stamp.

If all of the uploaded files are present, the event policy and upload actions are working correctly. If none of the files are uploaded, verify that the destination is configured and that the archive site URL and any required password is entered correctly. For information about configuring destinations, see Example: Defining Destinations for File Archiving by Event Policies. If a portion of the files are missing, configure a longer transfer delay and increase the retry count and retry interval for those files.