qcollector_tcp

package module
v0.2.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 19, 2017 License: Apache-2.0 Imports: 13 Imported by: 2

README

collector-tcp

TCP collector for the qframe framework.

cmd/qframe-collector-tcp/main.go

The example script will instantiate the collector and wait for a message send to it.

go run main.go
2017/04/21 12:37:29 [II] Dispatch broadcast for Data and Tick
2017/04/21 12:37:29 [  INFO] test >> Listening on 127.0.0.1:11001

Once send...

$ echo "Test-$(date +%s)" | nc -w1  127.0.0.1 11001

... the message will be displayed and the script exits:

#### Received (remote:127.0.0.1:60846): Test-1492771635

Deveolpment

Start Dev-Container
$ docker run -ti --name qframe-collector-tcp --rm -e SKIP_ENTRYPOINTS=1 -p 11001:11001 \
           -v ${GOPATH}/src/github.com/qnib/qframe-collector-tcp:/usr/local/src/github.com/qnib/qframe-collector-tcp \
           -v ${GOPATH}/src/github.com/qnib/qframe-collector-docker-events/lib:/usr/local/src/github.com/qnib/qframe-collector-docker-events/lib \
           -v ${GOPATH}/src/github.com/qnib/qframe-types:/usr/local/src/github.com/qnib/qframe-types \
           -v ${GOPATH}/src/github.com/qnib/qframe-utils:/usr/local/src/github.com/qnib/qframe-utils \
           -v ${GOPATH}/src/github.com/qnib/qframe-inventory/lib:/usr/local/src/github.com/qnib/qframe-inventory/lib \
           -v ${GOPATH}/src/github.com/qnib/qframe-filter-inventory/lib:/usr/local/src/github.com/qnib/qframe-filter-inventory/lib \
           -v /var/run/docker.sock:/var/run/docker.sock \
           -w /usr/local/src/github.com/qnib/qframe-collector-tcp \
            qnib/uplain-golang bash

$ govendor update github.com/qnib/qframe-filter-inventory/lib \
                  github.com/qnib/qframe-inventory/lib \
                  github.com/qnib/qframe-collector-docker-events/lib \
                  github.com/qnib/qframe-collector-tcp/lib \
                  github.com/qnib/qframe-types github.com/qnib/qframe-utils 
Start collector
$ go run main.go
2017/05/01 01:05:07 [II] Dispatch broadcast for Back, Data and Tick
2017/05/01 01:05:07 [  INFO] docker-events >> Start docker-events collector v0.2.1
2017/05/01 01:05:07 [  INFO] inventory >> Start inventory v0.1.1
2017/05/01 01:05:07 [  INFO] docker-events >> Connected to 'moby' / v'17.05.0-ce-rc1'
2017/05/01 01:05:09 [  INFO] tcp >> Listening on 0.0.0.0:11001
2017/05/01 01:05:41 [  INFO] tcp >> Received TCP message 'cee{"data": "test 123", "event_code": "001.001"}' from '172.17.0.3'

When a message is send...

$ docker run -ti --rm --name event-sender \
         qnib/qframe-collector-tcp-sender /usr/local/bin/send-event.sh \
         $(docker inspect -f '{{ .NetworkSettings.Networks.bridge.IPAddress }}' qframe-collector-tcp)

... it will be received like this:

2017/05/01 01:05:41 [  INFO] inventory >> Received InventoryRequest for {2017-05-01 01:05:41.241390067 +0000 UTC   172.17.0.3 0xc4201c7b00}
2017/05/01 01:15:07 [  INFO] tcp >> Got inventory response for msg: 'cee{"data": "test 123", "event_code": "001.001"}'
2017/05/01 01:16:10 [  INFO] tcp >>         Container{Name:/event-sender, Image: sha256:00e3f5e01ec09673e36e477e522b6aefc2c17f969f266f3217e090f8d1941d69}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type IncommingMsg

type IncommingMsg struct {
	Msg  string
	Host string
}

type Plugin

type Plugin struct {
	*qtypes_plugin.Plugin
	// contains filtered or unexported fields
}

func New

func New(qChan qtypes_qchannel.QChan, cfg *config.Config, name string) (Plugin, error)

func (*Plugin) HandleInventoryRequest

func (p *Plugin) HandleInventoryRequest(qm qtypes_messages.Message)

func (*Plugin) Run

func (p *Plugin) Run()

Directories

Path Synopsis
cmd
resources

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL