Solaris Zones Kernel Statistics API

Kernel statistics via kstat module

Documentation

📖
Documentation
https://docs.oracle.com/cd/E88353_01/html/E37839/zones.html
📖
Documentation
https://docs.oracle.com/cd/E88353_01/html/E37839/zonecfg-1m.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E61040/
📖
Documentation
https://docs.oracle.com/cd/E88353_01/html/E37839/zoneadm-1m.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E61038/gqhar.html
📖
Documentation
https://docs.oracle.com/cd/E88353_01/html/E37839/zonestat-1.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E61043/gklfb.html
📖
Documentation
https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/rad-client/rest-api-reference.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E68270/gpzpd.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E68270/gpzpv.html
📖
Documentation
https://docs.oracle.com/cd/E88353_01/html/E76189/zonemgr-1-3rad.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E61043/
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E61043/gklfn.html
📖
Documentation
https://docs.oracle.com/cd/E23824_01/html/821-1499/gloag.html
📖
Documentation
https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/kernel-zones/oracle-solaris-kernel-zones.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E61041/gnzfn.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E56520/index.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E56520/sstoreintro.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E56520/ssids.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E60984/gmrlo.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E60984/gmwen.html
📖
Documentation
https://docs.oracle.com/cd/E37838_01/html/E61039/gpoiu.html

Specifications

OpenAPI Specification

solaris-zones-kernel-statistics-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Solaris Zones Oracle Solaris Kernel Zones Archive Creation Kernel Statistics API
  description: REST API for creating and managing Oracle Solaris Kernel Zones via the RAD zonemgr module. Kernel Zones (brand solaris-kz) are non-global zones with their own kernel, providing greater independence and enhanced security isolation compared to native zones. They support live migration, independent patching, and hardware-assisted virtualization.
  version: '1.6'
  contact:
    name: Oracle Solaris Support
    url: https://www.oracle.com/solaris/support/
    email: solaris-support@oracle.com
  license:
    name: Oracle Technology Network License
    url: https://www.oracle.com/legal/terms.html
servers:
- url: https://{host}:{port}/api/com.oracle.solaris.rad.zonemgr/1.6
  description: Oracle Solaris RAD REST endpoint
  variables:
    host:
      default: localhost
      description: Solaris host running RAD
    port:
      default: '6788'
      description: RAD REST API port
security:
- cookieAuth: []
tags:
- name: Kernel Statistics
  description: Kernel statistics via kstat module
paths:
  /com.oracle.solaris.rad.kstat/2.0:
    get:
      operationId: listKstatInterfaces
      summary: Solaris Zones List Kernel Statistics Interfaces
      description: Retrieve a list of all available kernel statistics interfaces. These provide access to CPU, memory, network, and I/O statistics per zone.
      tags:
      - Kernel Statistics
      parameters:
      - $ref: '#/components/parameters/radDetail'
      responses:
        '200':
          description: List of kstat interfaces
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                  payload:
                    type: array
                    items:
                      $ref: '#/components/schemas/KstatInterface'
              examples:
                Listkstatinterfaces200Example:
                  summary: Default listKstatInterfaces 200 response
                  x-microcks-default: true
                  value:
                    status: example_value
                    payload:
                    - href: example_value
                      module: example_value
                      name: Example Title
                      statistic: example_value
                      instance: example_value
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /com.oracle.solaris.rad.kstat/2.0/Kstat/{module},{name},{statistic},{instance}:
    get:
      operationId: getKstat
      summary: Solaris Zones Get a Specific Kernel Statistic
      description: Retrieve a specific kernel statistic by module, name, statistic, and instance identifier. The four-tuple uniquely identifies a kernel statistics entry.
      tags:
      - Kernel Statistics
      parameters:
      - name: module
        in: path
        required: true
        description: Kstat module name (e.g., misc, cpu, zones)
        schema:
          type: string
        example: example_value
      - name: name
        in: path
        required: true
        description: Kstat name (e.g., cpu_info0, vm)
        schema:
          type: string
        example: Example Title
      - name: statistic
        in: path
        required: true
        description: Statistic name (e.g., cpu_info, cpu)
        schema:
          type: string
        example: example_value
      - name: instance
        in: path
        required: true
        description: Instance identifier (e.g., CPU number, zone ID)
        schema:
          type: string
        example: example_value
      - $ref: '#/components/parameters/radDetail'
      responses:
        '200':
          description: Kernel statistic data
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                  payload:
                    $ref: '#/components/schemas/KstatData'
              examples:
                Getkstat200Example:
                  summary: Default getKstat 200 response
                  x-microcks-default: true
                  value:
                    status: example_value
                    payload:
                      module: example_value
                      name: Example Title
                      statistic: example_value
                      instance: 10
                      snaptime: 10
                      data: example_value
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /com.oracle.solaris.rad.kstat/2.0/Kstat/misc,cpu_info0,cpu_info,{cpuId}:
    get:
      operationId: getCpuInfo
      summary: Solaris Zones Get Cpu Information
      description: Retrieve detailed CPU information for a specific CPU. Useful for monitoring CPU allocation and usage across zones.
      tags:
      - Kernel Statistics
      parameters:
      - name: cpuId
        in: path
        required: true
        description: CPU number
        schema:
          type: integer
        example: '500123'
      - $ref: '#/components/parameters/radDetail'
      responses:
        '200':
          description: CPU information
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                  payload:
                    $ref: '#/components/schemas/CpuInfo'
              examples:
                Getcpuinfo200Example:
                  summary: Default getCpuInfo 200 response
                  x-microcks-default: true
                  value:
                    status: example_value
                    payload:
                      brand: example_value
                      chip_id: '500123'
                      clock_MHz: 10
                      core_id: '500123'
                      cpu_type: example_value
                      implementation: example_value
                      ncore_per_chip: 10
                      state: example_value
                      vendor_id: '500123'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /com.oracle.solaris.rad.kstat/2.0/Kstat/misc,vm,cpu,{cpuId}:
    get:
      operationId: getVmCpuStats
      summary: Solaris Zones Get Vm Cpu Statistics
      description: Retrieve virtual machine CPU statistics for a specific CPU. Provides CPU utilization data relevant to zone performance monitoring.
      tags:
      - Kernel Statistics
      parameters:
      - name: cpuId
        in: path
        required: true
        description: CPU number
        schema:
          type: integer
        example: '500123'
      - $ref: '#/components/parameters/radDetail'
      responses:
        '200':
          description: VM CPU statistics
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                  payload:
                    $ref: '#/components/schemas/VmCpuStats'
              examples:
                Getvmcpustats200Example:
                  summary: Default getVmCpuStats 200 response
                  x-microcks-default: true
                  value:
                    status: example_value
                    payload:
                      cpu_nsec_idle: 10
                      cpu_nsec_kernel: 10
                      cpu_nsec_user: 10
                      cpu_nsec_dtrace: 10
                      cpu_nsec_intr: 10
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    VmCpuStats:
      type: object
      properties:
        cpu_nsec_idle:
          type: integer
          format: int64
          description: Nanoseconds spent idle
          example: 10
        cpu_nsec_kernel:
          type: integer
          format: int64
          description: Nanoseconds spent in kernel mode
          example: 10
        cpu_nsec_user:
          type: integer
          format: int64
          description: Nanoseconds spent in user mode
          example: 10
        cpu_nsec_dtrace:
          type: integer
          format: int64
          description: Nanoseconds spent in DTrace
          example: 10
        cpu_nsec_intr:
          type: integer
          format: int64
          description: Nanoseconds spent handling interrupts
          example: 10
    CpuInfo:
      type: object
      properties:
        brand:
          type: string
          description: CPU brand string
          example: example_value
        chip_id:
          type: integer
          description: Physical chip ID
          example: '500123'
        clock_MHz:
          type: integer
          description: CPU clock speed in MHz
          example: 10
        core_id:
          type: integer
          description: Core ID within the chip
          example: '500123'
        cpu_type:
          type: string
          description: CPU type identifier
          example: example_value
        implementation:
          type: string
          description: CPU implementation description
          example: example_value
        ncore_per_chip:
          type: integer
          description: Number of cores per chip
          example: 10
        state:
          type: string
          description: CPU state (on-line, off-line)
          example: example_value
        vendor_id:
          type: string
          description: CPU vendor identifier
          example: '500123'
    KstatInterface:
      type: object
      properties:
        href:
          type: string
          description: URL path to the kstat interface
          example: example_value
        module:
          type: string
          description: Kstat module name
          example: example_value
        name:
          type: string
          description: Kstat name
          example: Example Title
        statistic:
          type: string
          description: Statistic name
          example: example_value
        instance:
          type: string
          description: Instance identifier
          example: example_value
    RadError:
      type: object
      properties:
        status:
          type: string
          example: failure
        payload:
          type: object
          properties:
            code:
              type: integer
            message:
              type: string
          example: example_value
    KstatData:
      type: object
      properties:
        module:
          type: string
          example: example_value
        name:
          type: string
          example: Example Title
        statistic:
          type: string
          example: example_value
        instance:
          type: integer
          example: 10
        snaptime:
          type: integer
          format: int64
          description: Snapshot time in nanoseconds
          example: 10
        data:
          type: object
          additionalProperties: true
          description: Key-value pairs of statistic data
          example: example_value
  responses:
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RadError'
    Unauthorized:
      description: Authentication required or session expired
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RadError'
  parameters:
    radDetail:
      name: _rad_detail
      in: query
      required: false
      description: Returns detailed property information when present
      schema:
        type: boolean
  securitySchemes:
    cookieAuth:
      type: apiKey
      in: cookie
      name: _rad_session
      description: RAD session cookie obtained via authentication
externalDocs:
  description: Oracle Solaris Kernel Zones Documentation
  url: https://docs.oracle.com/en/operating-systems/solaris/oracle-solaris/11.4/kernel-zones/oracle-solaris-kernel-zones.html