---
name: "nws_cmd"
section: "1"
platform: "linux"
package: "nws"
version: "2.13-6.1"
release: "Debian 5.0 (Lenny)"
platforms: ["linux"]
url: "https://new.carta.tech/nws_cmd"
---

# nws\_cmd(1)

sends command to Network Weather Service processes

## NAME

nws\_cmd - sends command to Network Weather Service processes

## SYNOPSIS

**nws\_cmd** \[-t seconds\]\[-f file\]\[-r\]\[-s e,b,m\]\[-VX\]\[-N host\]\[-T time\]\[-P host\]\[-v #\] commands host \[command-options\]

## DESCRIPTION

This manual page explains the  **nws\_cmd** program. With **nws\_cmd** you can extract information from NWS installation. For example you can test the health of sensors, you can extract information from the **[nws\_proxy(1)](/nws_proxy/1.md),** you can have one time measurement of resources and such.

The  **host** after the command is the recipient of the message, everything else after that is options for the specific command.

Here is a list of commands you can specify

**test**

test the NWS process returning a brief informative line (which nameserver is used for registration and such). If the nws host is 'sick', it means that it cannot talk reliably with the nameserver. Multiple hosts can be specified.

**skill**

asks the remote sensor to execute a skill. The options that this command accepts are a tab delimited list of attribute:value pair: the attribute skillName has to be present. See  **EXAMPLES** on how to use it.

**ping**

execute a single network test to the specified host (host needs to have a running nws\_sensor). The options *-s* can specify the parameters for the probe.

**proxy**

asks to one or more nws proxy (specified using the  *-P* option) measurement and forecast for the specific resource (the first option) for all the hosts (all the other options are the hosts). Returns n/a if the data for some hosts is unavailable. If you specify  *-X* returns an XML document instead of a simple printout. It requires

**testSeries**

checks the status of the specified series (you can specify more then one). The status can be  *stale* (there is no activity, so no new data are collected, probably the  **[nws\_memory(1)](/nws_memory/1.md)** registered the series it found upon restart in stable storage), *unknown* (no series with such name is known), *current* (the series data are been collected) and *orphan* (the activity is not registered so no new data will be uploaed).

It requires to specify a  **[nws\_nameserver(1)](/nws_nameserver/1.md)** with the -N option.

**path**

accepts 2 hosts or cliques and tries to find the  *super* clique, that is the clique that connects the arguments. Hosts needs to be specified with the port number  *(fqdn:port).*

It requires to specify a  **[nws\_nameserver(1)](/nws_nameserver/1.md)** with the -N option.

## OPTIONS

- **-t timeout**

  **wait to connect to host for only**  *timeout.* seconds

- **-N host**

  use  *host* as **[nws\_nameserver(1)](/nws_nameserver/1.md)** to query. Multiple nameserver might be specified (using multiple -N option).

- **-P host**

  use *host* as  **[nws\_proxy(1)](/nws_proxy/1.md)** (used with the proxy command). More then one proxy can be specified with multiple -P options.

- **-X**

  used only with the **proxy** command. Print the result as an XML document.

- **-T time**

  discard data older then *time* seconds. Valid only for the *proxy* and *proxyClique* commands: you might want to set  *time* to be at least twice the periodicity (so for clique might be a resonably long time).

- **-r**

  use *relaxed* ruled to match hostnames (for example if sensors reigsters without domain name and such): useful when in combination with the *proxy* and  *proxyClique* command.

- **-f file**

  after reading the command line, read  *file* for options.

- **-V**

  print the version number.

- **-s experiment,buffer,message**

  this options is useful only when using the  **ping** command: it instructs to use an experiment size of  *experiment* kB, with *buffer* kB and using *message* kB messages.

- **-v level**

  specifies the verbosity while issuing NWS commands.  *level* can be up to 5.

## EXAMPLES

**To test a list of hosts (say sensor A, B and nameserver C) you can**

nws\_cmd test A B C:8090

To have the remote sensor A to use the cpuMonitor skill (that monitor 2 resources) you can

nws\_cmd skill A skillName:cpuMonitor

and the output will be someting like

A:8060 currentCpu: 1.00 A:8060 availableCpu: 0.92

You can have network experiment (thus conducted without using a clique). Say that you want to have sensor A test the network to sensor B using a message size of 512 (KB), you can

nws\_cmd skill A skillName:tcpMessageMonitor size:512 target:B

and the output will be something like

A:8060 latencyTcp: 37.62 A:8060 bandwidthTcp: 0.23

The 'skill' command allow to use all the options that the nwsSkill understants (ie you can use the 'nice' in cpuMonitor).

To retrieve from a  **[nws\_proxy(1)](/nws_proxy/1.md)** (P) bandwidth measurements of hosts A, B and C (assuming the proxy is already fetching the series)

nws\_cmd -P P proxy bandwidthTcp A B C

## BUGS

Bugs list is at  http://nws.cs.ucsb.edu. ⟨http://nws.cs.ucsb.edu⟩

## AUTHOR

NWS is an original idea of Rich Wolski Rich Wolski (rich@cs.ucsb.edu).

Graziano Obertelli (graziano@cs.ucsb.edu) currently maintains NWS and wrote this man page.

## SEE ALSO

**[nws\_sensor(1)](/nws_sensor/1.md),** **[nws\_search(1)](/nws_search/1.md),** **[nws\_nameserver(1)](/nws_nameserver/1.md),** **[nws\_extract(1)](/nws_extract/1.md)**
