<commit_before># occlient

Client for the gRPC OpenConfig service for subscribing to, getting and setting the
configuration and state of a network device.

## Sample usage

Subscribe to all updates on the Arista device at `10.0.1.2` and dump results as JSON to stdout:

```
occlient -addrs 10.0.1.2 -json
```

Subscribe to temperature sensors from 2 switches and stream to Kafka:

```
occlient -addrs 10.0.1.2,10.0.1.3 -kafkaaddrs kafka:9092 -subscribe /Sysdb/environment/temperature/status/tempSensor
```

Start in a container:
```
docker run aristanetworks/occlient -addrs 10.0.1.1
```

## ELK integration demo
The following video demoes integration with ELK using [this](https://github.com/aristanetworks/docker-logstash) Logstash instance:

[![video preview](http://img.youtube.com/vi/WsyFmxMwXYQ/0.jpg)](https://youtu.be/WsyFmxMwXYQ)<commit_msg>cmd/occlient: mention Kafka in the demo description<commit_after># occlient

Client for the gRPC OpenConfig service for subscribing to, getting and setting the
configuration and state of a network device.

## Sample usage

Subscribe to all updates on the Arista device at `10.0.1.2` and dump results as JSON to stdout:

```
occlient -addrs 10.0.1.2 -json
```

Subscribe to temperature sensors from 2 switches and stream to Kafka:

```
occlient -addrs 10.0.1.2,10.0.1.3 -kafkaaddrs kafka:9092 -subscribe /Sysdb/environment/temperature/status/tempSensor
```

Start in a container:
```
docker run aristanetworks/occlient -addrs 10.0.1.1
```

## Kafka/ELK integration demo
The following video demoes integration with Kafka and ELK using [this](https://github.com/aristanetworks/docker-logstash) Logstash instance:

[![video preview](http://img.youtube.com/vi/WsyFmxMwXYQ/0.jpg)](https://youtu.be/WsyFmxMwXYQ)
{'fraction_non_alphanumeric': 0.11231470923603193, 'fraction_numerical': 0.03534777651083238, 'mean_word_length': 4.643086816720257, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 10, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5965454', 'n_tokens_mistral': 626, 'n_tokens_neox': 578, 'n_words': 183}