# File Space Accounting

# Introduction

File Space Accounting allows recursive monitoring of file usage and provides usage reports that can be grouped by user ID, file type, project, hosts, and more.

The StorageAnalyzer collects file space data locally from every client where the StorageAnalyzer is enabled. A central configuration file on the Core Server is used to specify which file spaces to account. Each file space is accounted locally since this accounting process is I/O intensive. Subdirectories that are mounted over the network are not accounted by default due to I/O intensity, and because networked file systems are often mounted on many hosts. But network-mounted file systems are accounted if file space is configured to do so in the file systems configuration.

The first configuration that affects file space accounting is the file systems configuration file. File systems excluded in this file are also excluded from file space accounting. As mentioned previously, all non-local file systems are excluded by default.

This provides a clear understanding of how file space is being utilized. This will produce the following aggregated data types used for historical reporting:

The following section will guide you on configuring file space accounting.

# Requirements

# Configuring File Space Accounting

Open iT collects file space data from all clients. A central configuration file on the Open iT server specifies which file spaces to account for. The process is I/O intensive; therefore, each file space is accounted for locally. By default, subdirectories mounted over the network are not included in the accounting. However, network-mounted file systems can be included if configured to do so.

The filespace_win.conf configuration file contains a list of mappings to filter the components considered in storage monitoring.

The file has three main configuration parts:

Name Description
site This includes configuration for various sites, domains, or workgroups that will be included in storage monitoring.
exclude This includes configuration for various files that will be excluded in storage monitoring.
map This includes mapping configuration for specific hosts and files to a specific account.
Parts of the File Space Configuration File

# Adding Site to File Space Storage Monitoring

  1. In the server, open filespace_win.conf in the Configuration directory, which is by default in C:\Program Files\OpeniT\Core\Configuration. Read through the written instructions for configuration.

  2. Locate the line:

    filespace_win.conf
     9| all
    10| {
    11| # Pattern that must match for this site/domain/workgroup to be considered.
    12| # Use * to match all possible sites/domains/workgroups.
    13| # Example of using a workgroup:
    14| # site=WORKGROUP
    15| site=*
    ...
  3. Add new entries as needed. following the format:

    site=<site_name>
    Example
    site=*
    site=SVG.OPENIT.LOCAL
    site=LOCAL

    The example means to include storage monitoring for the domain SVG.OPENIT.LOCAL and the workgroup LOCAL.

  4. Save the changes.

# Excluding Files to File Space Storage Monitoring

Excluded file systems indicated in the configuration file are also excluded in file space accounting. All non-local file systems are also excluded by default.

  1. In the server, open filespace_win.conf in the Configuration directory, which is by default in C:\Program Files\OpeniT\Core\Configuration. Read through the written instructions for configuration.

  2. Locate the line:

    filespace_win.conf
    17| # Files to be excluded from accounting.
    18| # Default is to exclude names enclosed in curly braces and names ending in
    19| # .sys (system files).
    20| # NOTE: Some of the files excluded by default may not be accessible, and
    21| # warnings will be reported and incomplete reports generated if they are
    22| # included.
    23| exclude={*}
    24| exclude=*.sys
  3. Add new entries as needed. following the format:

    exclude=<file_name>
    Example
    exclude=*tmp
    exclude=*temp

    The example will exclude temporary files (files ending with .tmp and .temp) in file space storage monitoring.

  4. Save the changes.

# Adding Maps to File Space Storage Monitoring

  1. In the server, open filespace_win.conf in the Configuration directory, which is by default in C:\Program Files\OpeniT\Core\Configuration. Read through the written instructions for configuration.

  2. Locate the line:

    filespace_win.conf
    26| # Mappings.
    27| map
    28| {
    29|	  # Global match. Account all systems on "My Computer" if no other config is available.
    30|	  global
    31|	  {
    32|		host=*
    33|		match
    34|		{
    35|			all
    36|			{
    37|				dir=*
    38|				account=UNDEF
    39|			}
    40|		}
    41|	}
  3. Add new blocks under the map block, following the format:

    Example
    map
    {
    ...
      temp
      {
        host=mnl164win
        match
        {
           temps
           {
             dir=?:\temp*
             account=TEMP
           }
        }
      }

    The example will include temporary files in the host MNL164WIN for storage monitoring.

  4. Save the changes.

The file_space configuration file contains a list of mappings to filter the components considered in storage monitoring.

The file has three main configuration parts:

Name Description
DOMAIN This includes configuration for various domains or workgroups that will be included in storage monitoring.
EXCLUDE This includes configuration for various files that will be excluded in storage monitoring.
map This includes mapping configuration for specific hosts and files to a specific account.
Parts of the File Space Configuration File

# Adding Domain to File Space Storage Monitoring

  1. In the server, open file_space in the Configuration directory, which is by default in /var/opt/openit/etc. Read through the written instructions in the file.

  2. Add a new line for the DOMAIN using the following syntax:

    DOMAIN syntax
    DOMAIN:         <domain_name>
    DOMAIN Example
    DOMAIN:         samplecompany.com

    This example indicates that the hosts to be accounted for are within the samplecompany.com domain.

  3. Save the changes.

# Excluding File to File Space Storage Monitoring

  1. In the server, open file_space in the Configuration directory, which is by default in /var/opt/openit/etc. Read through the written instructions in the file.

  2. Add a new line for the EXCLUDE using the following syntax:

    EXCLUDE syntax
    EXCLUDE:      <files_or_directories_to_exclude_from_accounting>
    EXCLUDE Example
    EXCLUDE:      \.snapshot

    This example will exclude .snapshot files from the accounting.

    Add new entries as needed. Consider using regular expressions to better match the files or directories to be excluded. Make sure that all instructions and rules are followed to avoid malfunctions.

    Entries are processed from top to bottom, and the last pattern that matches is prioritized.

  3. Save the changes.

# Adding Maps to File Space Storage Monitoring

  1. In the server, open file_space in the Configuration directory, which is by default in /var/opt/openit/etc. Read through the written instructions in the file.

  2. Add a new mapping line using the following syntax:

    maps syntax
    <hostname>:<directory>      <account_name_or_group>
    EXCLUDE Example
    fs1:/testfs    TEST

    The example above enables file space accounting on host fs1 and the directory /testfs is accounted to TEST.

    Add new entries as needed. Consider using regular expressions to better match the directories and accounts. Make sure that all instructions and rules are followed to avoid malfunctions.

    Entries are processed from top to bottom, and the last pattern that matches is prioritized.

  3. Save the changes.

# Configuring File Type Classification

File space accounting collects all file data included in file systems by default. Three possible methods (levels) classify the files:

Level Description
Level 0 Accounting Select this as a faster alternative if the file type is of no interest. The file type will be regarded as undefined and set to undef.
Level 1 Accounting This is the default method that uses filenames to decide on the file type.
Level 2 Accounting This is the most advanced and slowest method that uses the file contents to decide on the file type.
File Type Levels

  1. Open filespace.conf in the Configuration directory, which is by default in C:\Program Files\OpeniT\Core\Configuration.

  2. Locate the filespace block.

  3. Change the value of the filetype attribute to the desired value from 0 to 2. By default, value is set to 1.

    filespace.conf
     1| filespace()=""
     2| {
     3|    log()=""
     4|     {
     5|       debug-level(Integer)="0"
     6|     }
     7|     working-dir(DirName)="${OpeniT.directories.data}/FileSpace"{}
     8|     temp-dir(DirName)="${OpeniT.directories.temp}"{}
            ...
    16|     filename(FileName)="${OpeniT.directories.conf}/filename_win.conf"{}
    17|     filetype(Integer)="1"{}
    18|     temperatures(FileName)="${OpeniT.directories.conf}/file_temperature"{}
    ...
  4. Save the changes.

For Unix systems, you may refer to the Configuring File Type Classification in Unix page.

# Configuring File Names to File Type Mapping

Configure the filename_win.conf file to map file extension to file types using the default file type Level 1.

Before mapping, verify the level and file used:

  1. Open filespace.conf in the Configuration directory, which is by default in C:\Program Files\OpeniT\Core\Configuration.

  2. Locate the filespace block.

  3. Verify the values of the filename and filetype attributes.

    filespace.conf
     1| filespace()=""
     2| {
     3|    log()=""
     4|     {
     5|       debug-level(Integer)="0"
     6|     }
     7|     working-dir(DirName)="${OpeniT.directories.data}/FileSpace"{}
     8|     temp-dir(DirName)="${OpeniT.directories.temp}"{}
            ...
    15|     filespace(FileName)="${OpeniT.directories.conf}/filespace_win.conf"{}
    16|     filename(FileName)="${OpeniT.directories.conf}/filename_win.conf"{}
    17|     filetype(Integer)="1"{}
    18|     temperatures(FileName)="${OpeniT.directories.conf}/file_temperature"{}
    ...

After verification:

  1. In the server, open filename_win.conf in the Configuration directory, which is by default in C:\Program Files\OpeniT\Core\Configuration.

  2. Read through and follow the written instructions for configuration. Use any syntax below:

    filename_win.conf (Using Comma)
    <file_type>
    {
        <file_extention1>,<file_extention2>,<file_extentionN>
    }
    filename_win.conf (Using New Line)
    <file_type>
    {
        <file_extention1>
        <file_extention2>
        <file_extentionN>
    }
    filename_win.conf (Using both Comma and New Line)
    <file_type>
    {
        <file_extention1>,<file_extention2>,<file_extention3>
        <file_extention4>
        <file_extentionN>
    }
    Example
    binary
    {
        exe,com,bin
        ocx,sys,scr
    }

    This example will map exe, com, bin, ocx, sys, and scr to file type binary.

    By default, the file already has defined mappings. Add new entries as needed. Globbing is allowed in extension mapping. Use only lower case for file extensions. Make sure that all instructions and rules are followed to avoid malfunctions.

  3. Save the changes.

Configure the filename_type file to map file extension to file types using the default file type Level 1.

Before mapping, verify the level and file used:

  1. Open openit.cfg in the openit directory, which is by default in /etc/opt/openit/.

  2. Locate the STORAGE_FILE_SPACE_LEVEL and STORAGE_FILENAME_TYPE_MAP.

  3. Verify that the values are 1 and filename_type, respectively.

    openit.cfg
    STORAGE_FILE_SPACE_LEVEL    1
    STORAGE_FILENAME_TYPE_MAP   filename_type

After verification:

  1. In the server, open filename_type in the etc directory, which is by default in /var/opt/openit/etc.

  2. The mapping file is line oriented and contains two types of lines: regular expression mappings and the comments.

    The regular expression mappings begin with match: followed by a Perl type regular match expression and a file type.

    filename_type
    match:      <Perl_type_regular_expressions>       <file_type>

    The Perl type regular expression may match files depending on directory or file name.

    Example
    match:      \/bin\/[^/]+$       binary

    This example will map any string that ends with /bin/<string> to file type binary. <string> is a single file or name that does not include another /.

    By default, the file already has defined mappings. Add new entries as needed. Make sure that all instructions and rules are followed to avoid malfunctions.

  3. Save the changes.

# Configuring File Temperature

The file_temperature configuration file contains various temperature levels for the files accounted for. There are five default temperature levels, each with its own default label and upper boundary (in days).

file_temperature
# Temperature settings for file_space accounting.

# This file has the default settings for five
# temperature levels.
# Temperature labels  Upper boundary(days)
# ------------------  --------------------
hot                   30
warm                  90
tepid                 360
cold                  720
frozen                infinity

In this case, the lower boundary is considered as the upper boundary of the previous level. The lower boundary of the first level is assumed to be 0. The last level should have no number but infinity. This means that there will be no upper limit for this temperature level.

  1. In the server, open file_temperature in the Configuration directory, which is by default in C:\Program Files\OpeniT\Core\Configuration.

  2. Modify the configuration file as needed.

  3. Save the changes.

  1. In the server, open file_temperature in the Configuration directory, which is by default in /var/opt/openit/etc.

  2. Modify the configuration file as needed.

  3. Save the changes.

# Configuring File Space Period and Offset

  1. Go to the scheduler directory, which is by default in C:\Program Files\OpeniT\Core\Configuration\scheduler, and open collect_storage_filespace-win.oconf.

  2. Locate and set the value of root.scheduler.jobs.collect_filespace_win.scheduling.start-triggers.trigger#1.period. The default value is P7D.

    collect_storage_filespace-win.oconf
    66| period
    67| {
    68|     description=Run weekly
    69|     type=timespan
    70|     value=P7D
    71| }
  3. Locate and set the value of root.scheduler.jobs.collect_filespace_win.scheduling.start-triggers.trigger#1.offset. The default value is P-5DT2H.

    collect_storage_filespace-win.oconf
    72| offset
    73| {
    74|     description=Rather than running at midnight Monday, start 2 hours before midnight on Saturday
    75|     type=timespan
    76|     value=P-5DT2H
    77| }
  4. Save the changes.

For Unix systems, you may refer to the Configuring File Space Period and Offset in Unix page.

# Sample Historical Report

File Storage Report for svg_host0045

File Storage Report for svg_host0045

We value your feedback!

Please take a few minutes to complete our survey and share your thoughts on your recent experience with our documentation.

Take survey

Close