com.sun.jna.platform.unix.aix

## Interface Perfstat

All Superinterfaces:
  Library

    public interface Perfstat
    extends Library

The perfstat API uses the perfstat kernel extension to extract various AIX® performance metrics. System component information is also retrieved from the Object Data Manager (ODM) and returned with the performance metrics. The perfstat API is thread–safe, and does not require root authority.

### Nested Class Summary

Nested Classes
`static class` `Perfstat.perfstat_cpu_t`
`static class` `Perfstat.perfstat_cpu_total_t`
`static class` `Perfstat.perfstat_disk_t`
`static class` `Perfstat.perfstat_id_t`
`static class` `Perfstat.perfstat_memory_total_t`
`static class` `Perfstat.perfstat_netinterface_t`
`static class` `Perfstat.perfstat_partition_config_t`
`static class` `Perfstat.perfstat_process_t`
`static class` `Perfstat.perfstat_protocol_t`
`static class` `Perfstat.perfstat_value_t`

### Nested classes/interfaces inherited from interface com.sun.jna.Library

`Library.Handler`

### Field Summary

Fields
`static int` `IDENTIFIER_LENGTH`
`static Perfstat` `INSTANCE`

### Fields inherited from interface com.sun.jna.Library

`OPTION_ALLOW_OBJECTS, OPTION_CALLING_CONVENTION, OPTION_CLASSLOADER, OPTION_FUNCTION_MAPPER, OPTION_INVOCATION_MAPPER, OPTION_OPEN_FLAGS, OPTION_STRING_ENCODING, OPTION_STRUCTURE_ALIGNMENT, OPTION_SYMBOL_PROVIDER, OPTION_TYPE_MAPPER`

### Method Summary

All Methods Instance Methods Abstract Methods
`int` `perfstat_cpu_total(Perfstat.perfstat_id_t name, Perfstat.perfstat_cpu_total_t cpu, int sizeof_struct, int desired_number)` Retrieves total processor usage metrics
`int` `perfstat_cpu(Perfstat.perfstat_id_t name, Perfstat.perfstat_cpu_t[] cpu, int sizeof_struct, int desired_number)` Retrieves individual processor usage metrics
`int` `perfstat_disk(Perfstat.perfstat_id_t name, Perfstat.perfstat_disk_t[] disks, int sizeof_struct, int desired_number)` Retrieves disk statistics
`int` `perfstat_memory_total(Perfstat.perfstat_id_t name, Perfstat.perfstat_memory_total_t mem, int sizeof_struct, int desired_number)` Retrieves total memory-related metrics
`int` `perfstat_netinterface(Perfstat.perfstat_id_t name, Perfstat.perfstat_netinterface_t[] netints, int sizeof_struct, int desired_number)` Retrieves network interfaces
`int` `perfstat_partition_config(Perfstat.perfstat_id_t name, Perfstat.perfstat_partition_config_t config, int sizeof_struct, int desired_number)` Retrieves total memory-related metrics
`int` `perfstat_process(Perfstat.perfstat_id_t name, Perfstat.perfstat_process_t[] procs, int sizeof_struct, int desired_number)` Retrieves process-related metrics
`int` `perfstat_protocol(Perfstat.perfstat_id_t name, Perfstat.perfstat_protocol_t[] protocols, int sizeof_struct, int desired_number)` Retrieves protocol data

### Field Detail

#### INSTANCE

    static final Perfstat INSTANCE

#### IDENTIFIER_LENGTH

    static final int IDENTIFIER_LENGTH

See Also:
  Constant Field Values

### Method Detail

#### perfstat_cpu_total

    int perfstat_cpu_total(Perfstat.perfstat_id_t name,
                           Perfstat.perfstat_cpu_total_t cpu,
                           int sizeof_struct,
                           int desired_number)

Retrieves total processor usage metrics

Parameters:
  `name` - Reserved for future use, must be NULL
  `cpu` - Populated with structure
  `sizeof_struct` - Should be set to sizeof(perfstat_cpu_total_t)
  `desired_number` - Reserved for future use, must be set to 0 or 1
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned. This is always 1.

#### perfstat_cpu

    int perfstat_cpu(Perfstat.perfstat_id_t name,
                     Perfstat.perfstat_cpu_t[] cpu,
                     int sizeof_struct,
                     int desired_number)

Retrieves individual processor usage metrics

Parameters:
  `name` - Structure containing empty string when collecting all cpu stats, or null to count CPUs
  `cpu` - Populated with structures, or null to count CPUs
  `sizeof_struct` - Should be set to sizeof(perfstat_cpu_t)
  `desired_number` - Set to 0 to count CPUs, set to number of cpus to return otherwise
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned.

#### perfstat_memory_total

    int perfstat_memory_total(Perfstat.perfstat_id_t name,
                              Perfstat.perfstat_memory_total_t mem,
                              int sizeof_struct,
                              int desired_number)

Retrieves total memory-related metrics

Parameters:
  `name` - Reserved for future use, must be NULL
  `mem` - Populated with structure
  `sizeof_struct` - Should be set to sizeof(perfstat_memory_total_t)
  `desired_number` - Reserved for future use, must be set to 0 or 1
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned. This is always 1.

#### perfstat_process

    int perfstat_process(Perfstat.perfstat_id_t name,
                         Perfstat.perfstat_process_t[] procs,
                         int sizeof_struct,
                         int desired_number)

Retrieves process-related metrics

Parameters:
  `name` - Structure containing empty string when collecting all process stats, or null to count processes
  `procs` - Populated with structure
  `sizeof_struct` - Should be set to sizeof(perfstat_process_t)
  `desired_number` - Set to 0 to count processes, set to number of processes to return otherwise
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned.

#### perfstat_disk

    int perfstat_disk(Perfstat.perfstat_id_t name,
                      Perfstat.perfstat_disk_t[] disks,
                      int sizeof_struct,
                      int desired_number)

Retrieves disk statistics

Parameters:
  `name` - Structure containing empty string when collecting all disk stats, or null to count block disks
  `disks` - Populated with structures, or null to count disks
  `sizeof_struct` - Should be set to sizeof(perfstat_disk_t)
  `desired_number` - Set to 0 to count disks, set to number of disks to return otherwise
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned.

#### perfstat_partition_config

    int perfstat_partition_config(Perfstat.perfstat_id_t name,
                                  Perfstat.perfstat_partition_config_t config,
                                  int sizeof_struct,
                                  int desired_number)

Retrieves total memory-related metrics

Parameters:
  `name` - Reserved for future use, must be NULL
  `config` - Populated with structure
  `sizeof_struct` - Should be set to sizeof(perfstat_partition_config_t)
  `desired_number` - Reserved for future use, must be set to 0 or 1
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned. This is always 1.

#### perfstat_netinterface

    int perfstat_netinterface(Perfstat.perfstat_id_t name,
                              Perfstat.perfstat_netinterface_t[] netints,
                              int sizeof_struct,
                              int desired_number)

Retrieves network interfaces

Parameters:
  `name` - Structure containing empty string when collecting all interface stats, or null to count interfaces
  `netints` - Populated with structures, or null to count interfaces
  `sizeof_struct` - Should be set to sizeof(perfstat_netinterface_t)
  `desired_number` - Set to 0 to count network interfaces, set to number of interfaces to return otherwise
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned.

#### perfstat_protocol

    int perfstat_protocol(Perfstat.perfstat_id_t name,
                          Perfstat.perfstat_protocol_t[] protocols,
                          int sizeof_struct,
                          int desired_number)

Retrieves protocol data

Parameters:
  `name` - Structure containing empty string when collecting all protocol stats, or null to count stats
  `protocols` - Populated with structures, or null to count protocols
  `sizeof_struct` - Should be set to sizeof(perfstat_protocol_t)
  `desired_number` - Set to 0 to count protocols, set to number of protocols to return otherwise
Returns:
  The return value is -1 in case of errors. Otherwise, the number of structures copied is returned.

Copyright © 2007-2018 Timothy Wall. All Rights Reserved.