Smos Logo Smos

A comprehensive self-management system

Custom reports

Documentation about the smos-query report command, for running prepared reports

This command, without arguments, shows you an overview of the custom reports you have configured. With an argument, it will show you that report.

Reference

Options

smos-query report [NAME] [--pretty | --yaml | --json | [--pretty-json]]

  NAME          name of the report                
  --pretty      pretty text                       
  --yaml        Yaml                              
  --json        single-line JSON                  
  --pretty-json pretty JSON        default: pretty

Environment variables


Configuration values

  available reports
  default: fromList []
  report.reports:
    # or null
    <key>: 
      # PreparedReport
      description: # optional
        # A description of the report
        # or null
        <string>
      filter: # optional
        # The entry filter to get the results in the report
        # or null
        def: EntryFilter
        # A filter is a string of one of the following forms:
        # 
        # tag:<tag>
        # state:<state>
        # file:<file>
        # level:<level>
        # header:<header>
        # property:<property-name>
        # property:<property-name>:<property-value>
        # property:<property-name>:time:<comparison>:<time>
        # parent:<filter>
        # ancestor:<filter>
        # child:<filter>
        # legacy:<filter>
        # not:<filter>
        # (<filter> and <filter>)
        # (<filter> or <filter>)
        <string>
      columns: # optional
        # The columns of the report
        # or null
        - def: Projection
          # A column (projection) is a string of one of the following forms:
          # 
          # file
          # state
          # header
          # tag:<tag-name>
          # property:<property-name>
          # timestamp:<timestamp-name>
          # ancestor:<projection>
          <string>
      sorter: # optional
        # The sorter to sort the rows of the report by
        # or null
        def: Sorter
        # A sorter is a string of one of the following forms:
        # 
        # file
        # header
        # state
        # tag:<tag>
        # property:<property-name>
        # property-as-time:<property-name>
        # timestamp:<timestamp-name>
        # reverse:<sorter>
        # (<sorter> then <sorter>)
        <string>
      hide-archive: # optional
        # Whether to consider the archive for the report
        # or null
        <boolean>

Combined settings

Usage: smos-query report [NAME] [--pretty | --yaml | --json | [--pretty-json]]

Run a prepared report

Available settings:
  Show this help text
  switch: -h|--help

  name of the report
  argument: NAME

  available reports
  config:
    report.reports: # or null
      <key>: 
        # PreparedReport
        description: # optional
          # A description of the report
          # or null
          <string>
        filter: # optional
          # The entry filter to get the results in the report
          # or null
          def: EntryFilter
          # A filter is a string of one of the following forms:
          # 
          # tag:<tag>
          # state:<state>
          # file:<file>
          # level:<level>
          # header:<header>
          # property:<property-name>
          # property:<property-name>:<property-value>
          # property:<property-name>:time:<comparison>:<time>
          # parent:<filter>
          # ancestor:<filter>
          # child:<filter>
          # legacy:<filter>
          # not:<filter>
          # (<filter> and <filter>)
          # (<filter> or <filter>)
          <string>
        columns: # optional
          # The columns of the report
          # or null
          - def: Projection
            # A column (projection) is a string of one of the following forms:
            # 
            # file
            # state
            # header
            # tag:<tag-name>
            # property:<property-name>
            # timestamp:<timestamp-name>
            # ancestor:<projection>
            <string>
        sorter: # optional
          # The sorter to sort the rows of the report by
          # or null
          def: Sorter
          # A sorter is a string of one of the following forms:
          # 
          # file
          # header
          # state
          # tag:<tag>
          # property:<property-name>
          # property-as-time:<property-name>
          # timestamp:<timestamp-name>
          # reverse:<sorter>
          # (<sorter> then <sorter>)
          <string>
        hide-archive: # optional
          # Whether to consider the archive for the report
          # or null
          <boolean>
  default: fromList []

  pretty text
  switch: --pretty

  Yaml
  switch: --yaml

  single-line JSON
  switch: --json

  pretty JSON
  switch: --pretty-json
  default: pretty