|Skip Navigation Links|
|Exit Print View|
|man pages section 1: User Commands Oracle Solaris 11 Express 11/10|
- report active zone statistics
zonestat [-z zonelist] [-r reslist] [-n namelist] [-T u | d | i] [-R reports] [-q] [-p [-P lines]] [-S cols] interval [duration [report]]
The zonestat utility reports on the cpu, memory, and resource control utilization of the currently running zones. Each zone's utilization is reported both as a percentage of system resources and the zone's configured limits.
The zonestat utility prints a series of interval reports at the specified interval. It optionally also prints one or more summary reports at a specified interval.
The default output is a summary of cpu, physical, and virtual memory utilization. The -r option can be used to choose detailed output for specific resources.
When run from within a non-global zone (NGZ), only processor sets visible to the NGZ are reported. The NGZ output includes all of other system resources, such as memory and limits.
For all reported resources, the NGZ's usage is output. Usage of each resource by the system, global zone, and all other zones, is reported as used by [system].
proc_info privilege is required to use the zonestat(1) utility. This privilege is a member of the basic privilege set.
The following options are supported:
Specify a list resource names on which to report. For pset resources, this is the name of the processor set. For physical-memory, locked-memory, and virtual-memory resources, the only names are mem_default and vm_default.
Dedicated-cpu processor sets can be specified by their pset name (SUNWtmp_zonename or by just their zonename.
Processor sets created by psrset can be specified by their pool pset name (SUNWlegacy_pset id), or just by their pset id.
In addition to a comma-separated list, multiple -n options can be specified to report on a set of resources.
Print output in stable, machine--parseable format. Individual fields are delimited with a colon (:). The line format is:
If -T is specified each line is prefixed with a timestamp:
The report types are: report-total, report-average, report-high, and interval,
The resource types are: header, footer, summary, physical-memory, virtual-memory, locked-memory, processor-set, processes, lwps, sysv-shared-memory, sysv-shmids, sysv-semids, sysv-msgids, lofi
The header resource is a special resource used to state the beginning of an interval or summary report. All output lines between header resources belong to the same report. Each header has a matching footer.
The remaining fields are resource type specific. See the zonestat utility output for details.
All existing output fields are stable. Future versions might introduce new report and resource types. Future versions might also add additional new fields to the end of existing output n lines.
For parseable output, specify lines to output in parseable output. One or more of the following line types can be chosen:
The lines describing each resource.
The total utilization of each resource
The utilization of each resource by the system. This includes the kernel, and any resource consumption not contributed to a specific zone. When zonestat is run from within a non-global-zone, this value is the aggregate resource consumed by the system and all other zones.
Lines detailing the per-zone utilization of each resource.
For each interval, and summary report has a header, which prints details such as the interval and count information. After each report, and footer is also printed
Only print summary reports (requires -R). All interval reports are omitted.
Specify resource types on which to report. The available resources are: physical-memory, virtual-memory, locked-memory, processor-set, processes, lwps, shm-memory, shm-ids, sem-ids, msg-ids, lofi
A summary of cpu, physical-memory, and virtual-memory usage.
physical-memory, virtual-memory, and locked-memory.
The default pset only.
processes, lwps, lofi.
shm-memory, shm-ids, sem-ids msg-ids.
all resource types.
By default the summary resource is printed.
In addition to a comma-separated list, multiple -r options can be specified to report on a set of resources types.
The system's cpus can be partitioned into processor sets (psets). By default, all cpus are in a single pset named pset_default.
Memory is not partition-able into sets. The zonestat utility output for these resources shows them as named mem_default and vm_default.
The all resource specifies that all resource types should be reported.
Print a summary report. The supported report types are described below. In addition to a comma-separated list, multiple -R options can be specified for a set of summary reports.
Prints a summary report detailing the following for each resource:
Total cpu used since start of command invocation. The percent used for each zone includes time that a zone was not running. For instance, if a zone used 100% of the cpu while it was running, but the zone was halted for half of the intervals, then the summary report shows the zone used 50% of the cpu time.
Average resource used of all intervals reported since command invocation. This average factors in intervals in which a zone was not running. For example if a zone used on average of 100M of physical memory while it was running, and was only running for half the intervals, then the summary report shows that the zone used 50M of physical memory on average.
Similar to total, but only intervals in which a zone is running are factored in. For example, if a zone was only running for a single interval, and during that interval, the zone used 200M of virtual memory, then it's average virtual-memory is 200M, regardless of the number of intervals reported before the summary report.
Print a summary report detailing the highest usage of each resource and zone during any interval of the zonestat utility invocation.
Sort zones utilizing each resource.
The following sorting columns can be specified:
Sort alpha-numerically by zone name.
Sort by quantity of resource used.
This is the default.
Sort by configured cap.
Sort by percent of cap used.
Sort by allocated share.
Sort by percent of share used.
Sort by cpu usage in the summary,
This is the default.
Sort by physical memory usage in the summary.
Sort by virtual memory usage in the summary.
Include timestamp of each report. The following formats are supported:
Specify a list of zones on which to report. By default all zones are reported.
In addition to a comma-separated list, multiple -z options can be specified to report on a set of zones. The output includes any resources which have usage by the specified zones.
The following operands are supported:
Specifies the length in seconds to pause between each interval report. An interval of default uses the configured interval of the zones monitoring service. See zonestatd(1M).
Interval is required. An interval of zero is not permitted. The interval can be specified as [nh][nm][ns], such as 10s or 1m.
Specifies the number of intervals to report. Defaults to infinity if not specified. The command duration is (interval * duration). A duration of zero is invalid. A value of inf can also be specified to explicitly choose infinity.
Duration can also be specified as [nh][nm][ns]. In this case, duration is interpreted as the duration of execution time. The actual duration is rounded up to the nearest multiple of the interval.
Specify the summary report period. For instance, a report of 4 produces reports every 4 intervals. If the command duration is not a multiple of report, then the last report is of any remaining intervals.
report can also be specified as [nh][nm][ns]. In this case, reports are output at the specified time period, rounded up to the nearest interval. If the command duration is not a multiple of report, then the last report is of any remaining intervals.
Requires -R. If -R is specified and report is not, the report period is the entire command duration, producing the specified reports at the end of execution.
The following list defines the column heading of the command output:
The total amount of memory available on the physical host.
The maximum amount of resource available on the physical host.
The number of cpus allocated to a processor set.
Of the cpus allocated to a processor set, the number of cpus which can execute processes.
The minimum and maximum number of cpus which can be allocated to the processor set by the system.
The zone using the resource. In addition to zone names, this column can also contain:
The total quantity of resource used system-wide.
The quantity of resource used by the kernel or in a manner not associated with any particular zone.
When zonestat is used within a non-global zone, [system] designates the aggregate resource used by the system and by all other zones.
The amount of resource used.
The amount of resource used as a percent of the total resource.
The amount of cpu used as a percentage of the total cpu in a processor-set to which the zone is bound. A zone can only have processes bound to multiple processor sets if it is the global zone, or if psrset(1m) psets are used. If multiple binding are found for a zone, it's %PART is the fraction used of all bound psets. For [total] and [system], %PART is the percent used of all cpus on the system.
If a zone is configured to have a cap on the given resource, the cap is displayed in this column.
The amount of resource used as a percent of zone's configured cap.
The number of shares allocated to the zone. For the [total] row, this is the total number of shares allocated to all zones sharing the resource. If a zone is not configured to use shares, and is sharing a resource with other zones that are configured to use shares, this column contains no-fss for the zone.
The fraction of the total shares allocated to the zone. For instance, if 2 zones share a processor set, each with 10 shares, then each zone has a %SHR of 50%.
Of the share allocated to the zone, the fraction of resource 100%. Because shares are only enforced when there is resource contention, it is possible for a zone to have a %SHRU in excess of 100%.
Example 1 Using zonestat to Display a Summary of cpu and Memory Utilization
The following command shows a summary of cpu and memory utilization every 5 seconds:
# zonestat -z global -r physical-memory 5 # zonestat 5 1 SUMMARY -----CPU------------- ----PHYSICAL--- ----VIRTUAL---- ZONE USED %PART %CAP %SHRU USED PCT %CAP USED PCT %CAP [total] 9.74 30% - - 7140M 21% - 10.6G 22% - [system] 0.28 0.8% - - 6535M 19% - 10.4G 21% - global 9.10 28% - - 272M 0.8% - 366M 0.7% - zoneA 0.32 1.0% - - 256M 0.7% - 265M 0.5% - zoneB 0.00 0.0% - - 77.6M 0.2% - 71.1M 0.1% -
Example 2 Using zonestat to Produce Parseable Output
The following command produces parseable output. It prints one line per zone using each pset resource for a 5 second interval.
# zonestat -p -P zones -r psets 5 1
Example 3 Using zonestat to Report on the Default pset
The following command reports on the default pset once a second for one minute.
# zonestat -r default-pset 1 1m
Example 4 Using zonestat to Report Total and High Utilization
The following command monitors silently at a 10 second interval for 24 hours, producing a total and high report every 1 hour.
# zonestat -q -R total,high 10s 24h 1h
The following exit values are returned:
An error occurred.
svc:system/zones_monitoring: default not running or not responding.
See attributes(5) for descriptions of the following attributes:
Command invocation and parseable output is Committed. Human readable output (default output) is Uncommitted.
The zonestat utility depends on the zones monitoring service: svc/system/zonestat:default. If the zonestat service is stopped while the zonestat utility is running, the zonestat command invocation quits without printing additional reports. The reports (-R) is printed if zonestat is interrupted (by CTRL/c, SIGINT) before reaching the next report period.