Using Ingest Time or Last Access Time in ILM rules

You can use advanced filtering if you want an ILM rule to apply only to objects that were ingested or last accessed on a specific date. You can also use Ingest Time or Last Access Time as the reference time in an ILM rule. For example, you might want to leave objects that have been viewed in the past month on local Storage Nodes, while moving objects that have not been viewed as recently to an off-site location.

About this task

When using Ingest Time or Last Access Time as an advanced filter, you must convert the desired time and date to microseconds since Unix Epoch.

When using Last Access Time as an advanced filter or as a reference time, you must enable last access time updates for S3 buckets.

Note: Last access time updates are always enabled for Swift containers, but are disabled by default for S3 buckets.
The table summarizes the behavior applied to all objects in the bucket when last access time is disabled or enabled.
Type of request Behavior if last access time is disabled (default) Behavior if last access time is enabled
Last access time updated? Object added to ILM evaluation queue? Last access time updated? Object added to ILM evaluation queue?
Request to retrieve an object, its access control list, or its metadata No No Yes Yes
Request to update an object’s metadata Yes Yes Yes Yes
Request to copy an object from one bucket to another
  • No, for the source copy
  • Yes, for the destination copy
  • No, for the source copy
  • Yes, for the destination copy
  • Yes, for the source copy
  • Yes, for the destination copy
  • Yes, for the source copy
  • Yes, for the destination copy
Request to complete a multipart upload Yes, for the assembled object Yes, for the assembled object Yes, for the assembled object Yes, for the assembled object

Steps

  1. If you are using Ingest Time or Last Access Time as advanced filters, determine the UTC date and time you want to use in the filter.
    You might need to convert from your local time zone to UTC.
  2. Convert the UTC date and time to microseconds since Unix Epoch.
    For example, use date from a Linux command prompt.
    # date -d '2015-03-14 00:00:00 UTC' +%s000000
    14262912000000
  3. If you are using Last Access Time as an advanced filter or as a reference time, enable last access time updates on each S3 bucket specified in that rule.
    You can use the Tenant Manager or the Tenant API to enable updates to last access time for S3 buckets. See the instructions for using tenant accounts.
    Attention: Be aware that enabling last access time updates can reduce performance, especially in systems with small objects. The performance impact occurs because StorageGRID Webscale must perform these additional steps every time objects are retrieved:
    • Update the objects with new timestamps
    • Add the objects to the ILM queue, so they can be reevaluated against current ILM rules and policy