Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

starting directory for pktvisor automated tests #237

Merged
merged 9 commits into from
Mar 22, 2022

Conversation

manrodrigues
Copy link
Contributor

No description provided.

@manrodrigues manrodrigues marked this pull request as ready for review March 21, 2022 18:31
@manrodrigues manrodrigues requested a review from a user March 21, 2022 18:31
@manrodrigues manrodrigues self-assigned this Mar 21, 2022
## Scenario: Run multiple pktvisors using different ports

## Steps:
- Provide 1 pktvisor using `docker run --net=host -d ns1labs/pktvisor pktvisord <net>`
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

provide 1 pktvisor instance

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok

@@ -0,0 +1,11 @@
## Scenario: Run multiple pktvisors using different ports
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

run multiple pktvisor instances

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok




@step("run pktvisor on port {pkt_port}")
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pktvisor instance

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok

@manrodrigues manrodrigues requested a review from a user March 21, 2022 19:01
Then the pktvisor container status must be running # features/steps/pktvisor.py:39 0.007s
And pktvisor API must be enabled # features/steps/pktvisor.py:75 1.123s

Scenario: run multiple pktvisors using different ports # features/pktvisor.feature:8
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

multiple pktvisor instances

Then the pktvisor container status must be running
And pktvisor API must be enabled

Scenario: run multiple pktvisors using different ports
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

multiple pktvisor instances

@manrodrigues manrodrigues requested a review from a user March 22, 2022 15:14
@manrodrigues manrodrigues merged commit c179711 into develop Mar 22, 2022
@manrodrigues manrodrigues deleted the tests/bootstrap branch March 22, 2022 20:40
leoparente pushed a commit that referenced this pull request Apr 22, 2022
* Change pre release back to develop and version

* support consumer counter in StreamHandlers

* Allow json content type on create policy route (POST)

* README updates

* README: add link to current metrics and sample output

* fix some container and build issues (#200)

* upgrade to latest gocui, fixes mouse bug when run from container

* fix pktvisor-cli docker build and runtime

* rename pktvisord-slim docker image to pktvisord

* add option to run only version code

* Clear filter before stopping pcapDevice

* log sflow biding

* improve json info in policies (#206)

* fix global configuration of period and deep sample for window config (#211)

* fix global configuration of period and deep sample for window config
* explicit template type to fix linux

* cli: run gofmt on version.go.in

* build: allow using existing conan build and host profile

* build: sort conanfile and remove generators

* build: workflow for static compilation

* Add retry in module child to get proper information when parsing json array

 - Yaml Cpp does not properly parse json array as expected by policy parser

* build: run cross compilation for develop branch

* Create dnstap_msg_type filter in DNS handler

* Implement filter by host mask for Dnstap Input

* Add support to metrics in policy and create GroupMetrics in Handler

* Add groups support to handlers and handler groups in DNS Handler

* add configure group method and not pass that in constructor

* use bitset operator[] to reduce overhead

* Validate filter by host and fix match ips

* refactor DNS Handler class to be possible to match groups in one place

* Refactor Net Handler to process input data in one method

* add groups on net handler

* Add bitset filter to dnstap

* refactor some group handling to base class

* Filter only if both response and query ip adresses don't match

* fix filtered dnstap packets

* Add unit tests for filtering dnstap

* Add doc messages on filter by hostmask

* move filtering logic to _filtering method

* Add support to metrics in policy and create GroupMetrics in Handler

* Add groups support to handlers and handler groups in DNS Handler

* add configure group method and not pass that in constructor

* use bitset operator[] to reduce overhead

* refactor DNS Handler class to be possible to match groups in one place

* Refactor Net Handler to process input data in one method

* add groups on net handler

* refactor some group handling to base class

* change metrics key to metric_groups and add method to check if group is enabled

* remove definition of MetricGroupIntType from streamHandler

* remove not necessary validation

* inline _filtering method in DNSTAP input stream

* Add unit tests for DNS handler groups

* add group unit tests for net handler

* validate group when merging metrics

* create unit tests for metric groups in policy class

* fix pktvisor-cli version warning (#220)

Co-authored-by: leoparente <95628882+leoparente@users.noreply.github.com>

* replace bullseye-slim with bookworm-slim

* Revert "replace bullseye-slim with bookworm-slim"

* Add proper indentation for chain handlers

* Update pktvisor code to use latest version of pcapplusplus library

* break after getting pcap live device instance

* remove not necessary internal pcap operations

* Add new_event to pcap handler callbacks to allow new bucket creation (#227)

* Update 3rd party libs (#231)

* Update 3rd party libs

    - Update conan lib version to latest available
    - Update datasketches to version 3.3.0

* restore datasketches Cmake files and UVW lib version

* Add gdb to docker debug (#234)

* gdb should be available at runtime for debug image (#235)

* Modify pktvisor CMake to allow it to be added as subdirectory in other projects (#236)

* replace cmake_source_dir with project_source on integration tests (#239)

* starting directory for pktvisor automated tests (#237)

* starting repo for pktvisor automated tests

* boostrap tests

* Implement ThreadMonitor for linux systems (#230)

* Implement ThreadMonitor for linux systems

* Resources metrics as Handler

* Implement cpu percentage based on htop program

* reuse pcap timestamp to check timediff

* Add Resources Handler to every new input stream

* add unit tests for resources handler

* add coverage to prometheus method

* rename resources handler to input resources handler

* fix typo

* create new policy with resource handler for each new input

* remove not necessary include from CoreServer

* Add unique name for resources handler

* add input resources policy to input policy list

* only add input resource policy if the creation policy succeed

* verify if input resources policy exists before removing it

* start input resources policy only after the added policy

* do proper roll back policy

* Add support to count policies and handlers attached to input stream

* Properly handle policies and handlers count on input resources handler

* Only merge the fist bucket which is the more recent one

* Change variables name

* improve code coverage of input resources module

* Ensure that resources policy pointer is initialized as nullptr (#245)

* Tests/policies (#248)

get, create and remove a policy

* Feature/adjust qname aggregation (#242)

* Threat static sufix on DNS Qnames

* compare without casting

* add only_qname_suffix validation on unit tests

* replace string_view with size_t for suffix

* Fix aggregation tests

* Implement tcp timeout with LRU list (#249)

* Implement tcp timeout with LRU list

* put connection on LRUList on start callback

* local_thread cached data (#243)

* local_thread cached data

* replace pair with struct

* dnsLayer should exist

* perform cached data logic only in Handler class

* thread_local member class

* Add lower case qname method on DnsResource

* Add support to robin hood map to dns transactions

* policies scenarios description (#251)

* policies scenarios description

* Don't limit dns wire data by size (#254)

* Don't limit dns wire data by size

* Check buffer size minimum

* user permission and single handler (#257)

* Avoid undefined behavior on LRUList (#258)

* Add support to packet size and throughput (#261)

* Add support to packet size and throughput

* rename size varible to payload_size

* avoid send not tcp dns packet (#262)

* Feature/support to crashpad trace (#260)

* Add support to stacktrace with crashpad

* Handle errors on crashpad setup

* Add own crashpad conan code

* Exit with failure if missing crashpad information

* add support to disable crashpad and fix unit tests

* add back the conan server crashpad

* Add crash handler on debug images (#265)

* [FIX] adding step to build symbol
* [FIX] crashpad final path

* [FIX] docker entrypoint (#268)

* [FIX] docker entrypoint

* [FIX] removing garbage

* [FIX] sleep to suport crashpad submit

* bump release 4.1.0

Co-authored-by: Shannon Weyrick <sweyrick@ns1.com>
Co-authored-by: leoparente <95628882+leoparente@users.noreply.github.com>
Co-authored-by: Jan Vcelak <jvcelak@ns1.com>
Co-authored-by: Jan Včelák <1205482+fcelda@users.noreply.github.com>
Co-authored-by: manrodrigues <78241475+manrodrigues@users.noreply.github.com>
Co-authored-by: etaques <97463920+etaques@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant