Retry Limits Using REST API

Learn how to change the retry limit for flagged items in migration jobs using the DryvIQ REST API.


Overview

When issues occur during transfer, DryvIQ categorizes the issues based on the error and flags items for manual remediation. This allows you to identify areas for review easily. By default, DryvIQ will retry an item three times. You can change the retry limit for different error messages.

Format

{
    "name": "Zips File Errors",
    "description": "Files with extension *.zip that failed.",
    "filter": {
        "rules": [
            {
                "text": "[audit_type] >= 5000",
                "type": "filter_context"
            },
            {
                "text": "*.zip",
                "targets": [
                    "item"
                ],
                "type": "filter_pattern"
            }
        ]
    },
    "action": "retry",
    "max_retry": 3,
    "level": "error",
    "priority": 10000
}

Parameters

Parameter Description Required
name The name of the category     Required
description An optional description for the category     Optional
filter

The criteria used to match an item to the category. There are two kinds:

  • Context metadata: Includes audit information about what caused the item to fail to transfer have a warning during transfer.
  • Pattern: includes match by item name/path pattern (e.g. *.txt)
Required
action

This identifies the action to take. There are three option:

  • retry: Retry the item transfer. The max_retry defines the number of times the item is retried before it is ignored.
  • ignore: Ignore the item. This places it in manual remediation.
  • halt: Halt the job; prevent the job from subsequent executions
Required
max_retry The number of retries to attempt before the item is ignored. The default value is 3. Optional

Filter by Context Metadata 

The sections below list your options for filtering based on context metadata. 

audit_type

Type: Integer

Description: The audit type.

Value Description Default Category
4001 Conflict copy created True, Priority 12
4002 Invalid security identifier     True, Priority 13
4003 Unsupported access rule     True, Priority 14
4004 Unsupported access rule target     True, Priority 14
4005 Access rule ignored     True, Priority 14
4006 Property value warning     True, Priority 15
4007 Restricted content skipped     True, Priority 16
4008

Item locked warning

(See Lock Propagation for more information.)

True, Priority 17
4050 Convention skipped     True, Priority 18
4100 Property value import failure     True, Priority 19
4101 Access rule import failure     True, Priority 20
5001 Unknown failure     True, Priority 1
5002 Connectivity failure     True, Priority 2
5003 Access failure     True, Priority 3
5004 Permission failure     True, Priority 4
5005 Policy failure     True, Priority 5
5006 Not found failure     True, Priority 6
5007 Duplicate item failure     True, Priority 7
5008 Invalid item failure     True, Priority 8
5009 IO failure     True, Priority 9
5010 Conflict failure     True, Priority 10
5011 License failure     True, Priority 11

Example Code

The example below includes any items with unknown errors.

{
    ...
    "filter": {
        "rules": [{
            "text": "[audit_type]=5001",
            "type": "filter_context"
        }],
    }
    ...
}
 
 

audit_level

Type: Integer

Description: The audit level. 

Value Description
0-999 None
1000-1999 Trace
2000-2999 Debug
3000-3999 Information
4000-4999 Warning
5000+ Error

Example Code

The example below includes any items with warnings.

{
    ...
    "filter": {
        "rules": [{
            "text": "[audit_level]>=4000 AND [audit_level]<5000",
            "type": "filter_context"
        }],
    }
    ...
}
 
 

message

Type: String

Description: The error message that cause of the item failure.

 
 

event_type

Type: String

Description: The event source of the original transfer operation:

  • add
  • update
  • copy
  • move
  • rename
  • restore
  • delete
  • delete_items
  • value_changed
  • lock (See "Lock Propagation Using REST API" for more information.)
  • unlock
  • conflict_copy
 
 

hresult

Type: String

Description: The system hresult code, if an error was generated by an exception.

 
 

exception

Type: String

Description: The exception type, if the error was generated by an exception.

 
 

Filter by Name Pattern 

You can also match categories by file path pattern. The example below includes any container (e.g., directory) with "secret" as any part of its name.

{
    ...
    "filter": {
        "rules": [{
            "text": "*secret*",
            "targets": [
                "container"
            ],
            "type": "filter_pattern"
        }],
    }
    ...
}