groups:
  # General system attributes
  - id: registry.system
    type: attribute_group
    display_name: General System Attributes
    brief: "Describes System attributes"
    attributes:
      - id: system.device
        type: string
        stability: experimental
        brief: "The device identifier"
        examples: ["(identifier)"]
  # system.cpu.* attribute group
  - id: registry.system.cpu
    type: attribute_group
    display_name: System CPU Attributes
    brief: "Describes System CPU attributes"
    attributes:
      - id: system.cpu.logical_number
        type: int
        stability: experimental
        brief: "The logical CPU number [0..n-1]"
        examples: [1]
  # system.memory.* attribute group
  - id: registry.system.memory
    type: attribute_group
    display_name: System Memory Attributes
    brief: "Describes System Memory attributes"
    attributes:
      - id: system.memory.state
        type:
          members:
            - id: used
              value: 'used'
              stability: experimental
            - id: free
              value: 'free'
              stability: experimental
            - id: shared
              value: 'shared'
              stability: experimental
              deprecated: 'Removed, report shared memory usage with `metric.system.memory.shared` metric'
            - id: buffers
              value: 'buffers'
              stability: experimental
            - id: cached
              value: 'cached'
              stability: experimental
        stability: experimental
        brief: "The memory state"
        examples: ["free", "cached"]
  # system.paging.* attribute group
  - id: registry.system.paging
    type: attribute_group
    display_name: System Paging Attributes
    brief: "Describes System Memory Paging attributes"
    attributes:
      - id: system.paging.state
        type:
          members:
            - id: used
              value: 'used'
              stability: experimental
            - id: free
              value: 'free'
              stability: experimental
        stability: experimental
        brief: "The memory paging state"
        examples: ["free"]
      - id: system.paging.type
        type:
          members:
            - id: major
              value: 'major'
              stability: experimental
            - id: minor
              value: 'minor'
              stability: experimental
        stability: experimental
        brief: "The memory paging type"
        examples: ["minor"]
      - id: system.paging.direction
        type:
          members:
            - id: in
              value: 'in'
              stability: experimental
            - id: out
              value: 'out'
              stability: experimental
        stability: experimental
        brief: "The paging access direction"
        examples: ["in"]
  - id: registry.system.filesystem
    type: attribute_group
    display_name: Filesystem Attributes
    brief: "Describes Filesystem attributes"
    attributes:
      - id: system.filesystem.state
        brief: "The filesystem state"
        type:
          members:
            - id: used
              value: 'used'
              stability: experimental
            - id: free
              value: 'free'
              stability: experimental
            - id: reserved
              value: 'reserved'
              stability: experimental
        stability: experimental
        examples: ["used"]
      - id: system.filesystem.type
        type:
          members:
            - id: fat32
              value: 'fat32'
              stability: experimental
            - id: exfat
              value: 'exfat'
              stability: experimental
            - id: ntfs
              value: 'ntfs'
              stability: experimental
            - id: refs
              value: 'refs'
              stability: experimental
            - id: hfsplus
              value: 'hfsplus'
              stability: experimental
            - id: ext4
              value: 'ext4'
              stability: experimental
        stability: experimental
        brief: "The filesystem type"
        examples: ["ext4"]
      - id: system.filesystem.mode
        type: string
        stability: experimental
        brief: "The filesystem mode"
        examples: ["rw, ro"]
      - id: system.filesystem.mountpoint
        type: string
        stability: experimental
        brief: "The filesystem mount path"
        examples: ["/mnt/data"]
  # system.process.* attribute group
  - id: registry.system.process
    type: attribute_group
    display_name: System Process Attributes
    brief: "Describes System Process attributes"
    attributes:
      - id: system.process.status
        type:
          members:
            - id: running
              value: 'running'
              stability: experimental
            - id: sleeping
              value: 'sleeping'
              stability: experimental
            - id: stopped
              value: 'stopped'
              stability: experimental
            - id: defunct
              value: 'defunct'
              stability: experimental
        stability: experimental
        brief: >
          The process state, e.g., [Linux Process State Codes](https://man7.org/linux/man-pages/man1/ps.1.html#PROCESS_STATE_CODES)
        examples: ["running"]
