Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Navigation
 

Related Documentation

 

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 hierarchies for uploading each of these file types using an event policy.

When you configure an event policy to upload files, you reference configured destinations within the event policy. Specify a destination name that is configured at the [edit event-options destinations] hierarchy level. For more information, see Example: Defining Destinations for File Archiving by Event Policies.

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.

[edit event-options policy policy-name then]upload filename (filename | committed) destination destination-name {retry-count number retry-interval seconds;transfer-delay seconds;user-name username;}

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 messages string, include the following statement:

upload filename /var/log/messages* destination destination-name;

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:

[edit event-options policy policy-name then]execute-commands {destination destination-name {retry-count count retry-interval seconds;transfer-delay seconds;}output-filename filename;}

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:

[edit event-options policy policy-name then]event-script filename {destination destination-name {retry-count count retry-interval seconds;transfer-delay seconds;}output-filename filename;}

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.

When an event policy uploads files, the files are named and time-stamped in the following format to ensure unique filenames:

device-name_filename_YYYYMMDD_HHMMSS

If a policy uploads multiple files within a 1-second period, the software gives each file a unique number as well, as follows:

device-name_filename_YYYYMMDD_HHMMSS_number

The number can be from 001 through 999. For example, if you have an event policy action with output filename rpd-messages on device1, and this event policy is executed three times in 1 second, the files are named as follows:

  • device1_rpd-messages_20070623_132333
  • device1_rpd-messages_20070623_132333_001
  • device1_rpd-messages_20070623_132333_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.

[edit event-options policy policy1]events e1;then {execute-commands {commands {"show interfaces brief ge-*";}}event-script event-script1;}

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:

set event-options policy policy1 then upload filename /var/log/messages destination mgmt-archives transfer-delay 4set event-options policy policy1 then upload filename /var/log/messages destination mgmt-archives retry-count 5 retry-interval 4set event-options policy policy1 then upload filename /var/log/messages destination mgmt-archives user-name adminset event-options policy policy1 then upload filename /var/log/messages destination mgmt-serverset event-options policy policy1 then upload filename committed destination mgmt-archivesset event-options policy policy1 then execute-commands output-filename ge-interfacesset event-options policy policy1 then execute-commands destination mgmt-archives transfer-delay 5set event-options policy policy1 then execute-commands destination mgmt-archives retry-count 5 retry-interval 4set event-options policy policy1 then event-script event-script1 output-filename policy1-script-outputset event-options policy policy1 then event-script event-script1 destination mgmt-archives transfer-delay 5set event-options policy policy1 then event-script event-script1 destination mgmt-archives retry-count 5 retry-interval 4

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.

    [edit event-options policy policy1 then]bsmith@R1# set upload filename /var/log/messages destination mgmt-archivesbsmith@R1# set upload filename /var/log/messages destination mgmt-server
  2. To upload the committed configuration file, specify the filename value as committed.

    [edit event-options policy policy1 then]bsmith@R1# set upload filename committed destination mgmt-archives
  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.

    [edit event-options policy policy1 then]bsmith@R1# set upload filename /var/log/messages destination mgmt-archives transfer-delay 4
  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.

    [edit event-options policy policy1 then]bsmith@R1#set upload filename /var/log/messages destination mgmt-archives retry-count 5 retry-interval 4
  5. (Optional) Configure the username associated with a file and destination. The system uploads the file using the privileges of the specified user.

    [edit event-options policy policy1 then]bsmith@R1#set upload filename /var/log/messages destination mgmt-archives user-name admin
  6. Commit the configuration.

    [edit event-options policy policy1 then]bsmith@R1# commit

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.

    [edit event-options policy policy1 then] bsmith@R1# set execute-commands output-filename ge-interfaces
  2. Configure the destination statement to upload the generated file to the desired archive site.

    [edit event-options policy policy1 then]bsmith@R1# set execute-commands destination mgmt-archives
  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.

    [edit event-options policy policy1 then]bsmith@R1# set execute-commands destination mgmt-archives transfer-delay 5
  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.

    [edit event-options policy policy1 then]bsmith@R1#set execute-commands destination mgmt-archives retry-count 5 retry-interval 4
  5. Commit the configuration.

    [edit event-options policy policy1 then]bsmith@R1# commit

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.

    [edit event-options policy policy1 then] bsmith@R1# set event-script event-script1 output-filename policy1-script-output
  2. Configure the destination statement to upload the generated file to the desired archive site.

    [edit event-options policy policy1 then]bsmith@R1# set event-script event-script1 destination mgmt-archives
  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.

    [edit event-options policy policy1 then]bsmith@R1# set event-script event-script1 destination mgmt-archives transfer-delay 5
  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.

    [edit event-options policy policy1 then]bsmith@R1#set event-script event-script1 destination mgmt-archives retry-count 5 retry-interval 4
  5. Commit the configuration.

    [edit event-options policy policy1 then]bsmith@R1# commit

Results

[edit event-options policy policy1 then]upload filename /var/log/messages destination mgmt-archives {user-name admin;transfer-delay 4;retry-count 5 retry-interval 4;}upload filename /var/log/messages destination mgmt-serverupload filename committed destination mgmt-archives;execute-commands {commands {"show interfaces brief ge-*";}output-filename ge-interfaces;destination mgmt-archives {transfer-delay 5;retry-count 5 retry-interval 4;}}event-script event-script1 {output-filename policy1-script-output;destination mgmt-archives {transfer-delay 5;retry-count 5 retry-interval 4;}}

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
R1_ge-interfaces_20111209_213452
R1_juniper.conf.gz_20111209_213409
R1_messages_20111209_212941
R1_policy1-script-output_20111209_212619

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.

 

Related Documentation

 

Published: 2012-11-05

 

Related Documentation

 

Published: 2012-11-05