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

Enhancement: Resolve mix of UK and US english along with minor grammatical errors #6

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 14 additions & 10 deletions website/content/docs/about.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,41 +5,44 @@ weight = 8

+++

Bench-routes is a GUI-powered monitoring tool that monitors system services, application behaviour and performance of
web applications and their routes (API). It performs a series of networking algorithms and calculations
Bench-routes is a GUI-powered monitoring tool that monitors system services, application behavior and performance of
web applications and their routes (API). It performs a series of networking algorithms, and calculations
to find the real-time state of routes in an application.

Alerting is provided to the users based on application states,
critical warnings and errors. Custom alerts occur when the delta (or change) in instantaneous responses fall beyond a
critical warnings, and errors. Custom alerts occur when the delta (or change) in instantaneous responses fall beyond a
threshold range.

### Architecture

![architecture](/images/bench-routes-arch.png)


## Collectors

The collector collects the metrics needed for a detailed view of an instance.

### Overview

Bench-routes monitors itself (host), VM targets and collects the metrics externally. Information like ping, jitter,
flood ping, req-res monitors is good to have since these define the overall state of the instance. However, information
related to the internal conditions per process like the core usage by a process, memory, processes behaviour is
related to the internal conditions per process like the core usage by a process, memory, processes behavior is
important to monitor. Collector aims to collect internal metrics of instances, which can be accessed over HTTP, thus
helping in carrying out advanced calculations.

#### Process collector
Process collector collects information per process and allows Bench-routes to monitor it. This enables monitoring of

Process collector collects information per process and allows Bench-routes to monitor it. This enables monitoring of
resources on a process level, leading to better observations. An example of this can be monitoring CPU, memory and
network usage of a process with PID X (say chrome).

This is useful in situations of debugging an app, understanding the performance and behaviour of it over time,
This is useful in situations of debugging an app, understanding the performance and behavior of it over time,
the load handling etc. These are crucial information that can also be used to predict the crash of a process/system,
thus helping in saving precious resources and assets.

#### System collector

System metrics collect system-level information. Following are details that are captured:

1. CPU usage
2. RAM usage
3. Memory cache
Expand All @@ -50,6 +53,7 @@ System metrics collect system-level information. Following are details that are
8. Per-core performance (TODO)

#### Journal collector
Journal collector watches over the logs in systemd service. At present, this is used to categorize events in form of
kernel or general events and show them in the UI. A future use of this can be to peek into these events by differentiating
them between events that are logs, warns or error and allowing looking over them from an interface.

Journal collector watches over the logs in the systemd service. At present, this is used to categorize events in form of
kernel or general events and show them in the UI. Future use of this can be to peek into these events by differentiating
them between events that are logged, warns, or error and allowing looking over them from an interface.
12 changes: 6 additions & 6 deletions website/content/docs/contribution.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@ description: "Contributing Guidelines"
weight: 5
---

First off, thank you for showing your interest in contributing the project!
First off, thank you for showing your interest in contributing to the project!

The following is a set of guidelines for contributing to `Bench-routes`. These are mostly guidelines, not rules.
Use your best judgment, and feel free to propose changes to this document in a pull request.

## Code of Conduct

This project and everyone who participates in it, are governed by this [Code of Conduct](https://github.com/bench-routes/bench-routes/blob/master/CODE_OF_CONDUCT.md).
By participating, you are expected to uphold this code. Please report unacceptable behaviour to [**[email protected]**](mailto:[email protected]).
By participating, you are expected to uphold this code. Please report unacceptable behavior to [**[email protected]**](mailto:[email protected]).

## How Can I Contribute?

Expand All @@ -23,21 +23,21 @@ We are excited to receive contributions from you in form of code.

Unsure where to begin contributing? You can start by looking through these [`beginner`](https://github.com/bench-routes/bench-routes/issues?q=is%3Aissue+is%3Aopen+label%3Afeature) and [`good-first-issue`](https://github.com/bench-routes/bench-routes/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) issues:

* Beginner issues - issues which should only require a few lines of code, and a test or two.
- Beginner issues - issues which should only require a few lines of code, and a test or two.

#### Pull Request Process

1. Make a new branch for each feature/pull request.
1. Make a new branch for each feature/pull request.
2. Ensure any install or build dependencies are removed before the end of the layer when doing a build.
3. Ensure that the code follows the linting standards. `eslint`, `tslint` and `prettier` are used for the TypeScript files and `golint` is used for the Golang files. Use the command `make fix` to format the code.
4. Write appropriate comments in the pull request, explaining the changes made. This helps maintainers, and the community understand the changes made by you and help review the PR. **Reference the issue you are fixing**.
5. For changes to the front-end include screenshots or screencast showing the working changes. You can use browser extensions like `Screencastify` to create a screencast.
5. For changes to the front-end include screenshots or screencasts showing the working changes. You can use browser extensions like `Screencastify` to create a screencast.
6. Make sure you submit some kind of proof of your fix that makes the reviewing process easier for the maintainers.

#### Reporting Bugs

This section guides you through submitting a bug report. Following these guidelines helps maintainers and the community
understand your report, reproduce the behaviour, and find related reports.
understand your report, reproduce the behavior, and find related reports.

When you are creating a bug report, please include as many details as possible. Fill out
[the required template](https://github.com/bench-routes/bench-routes/blob/master/.github/ISSUE_TEMPLATE/bug_report.md),
Expand Down
6 changes: 4 additions & 2 deletions website/content/docs/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,11 @@ description: "Getting started with Bench-Routes"
weight: 2
---

This is a guide to get started with the project. This is written more like a `hello-world` like manner, in order to
This is a guide to get started with the project. This is written more in a `hello-world` like manner, to
keep it simple.

Running Bench-routes is pretty straight forward. You require 2 files mostly:
Running Bench-routes is pretty straightforward. You require 2 files mostly:

1. Binary file
2. Configuration file (as `local-config.yml`)

Expand All @@ -19,6 +20,7 @@ in stable releases.

If you have followed the instructions by now from installation to making sure that config file is present, you can safely
run bench-routes. Based on your method of installation, you can run it:

1. `./bench-routes`
2. `go run ./src/*.go`
3. `make run`
Expand Down
18 changes: 9 additions & 9 deletions website/content/docs/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Current releases/images of Bench-routes is not suitable for production loads. If
consider opening issues [here](https://github.com/bench-routes/bench-routes/issues).
{{< /tip >}}

Bench-routes can be installed in 2 ways:
Bench-routes can be installed in 3 ways:

1. Bare metal
2. Docker
Expand All @@ -25,7 +25,7 @@ amd64 version of `v1.0.0-alpha.2` release.
wget -O bench-routes.tar.gz https://github.com/bench-routes/bench-routes/releases/download/v1.0.0-alpha.2/src-linux-amd64.tar.gz

# Extract the tar file
tar -zxvf bench-routes.tar.gz
tar -zxvf bench-routes.tar.gz

# Change directory
cd build/src-linux-amd64
Expand All @@ -37,15 +37,15 @@ cd build/src-linux-amd64
This should be enough to get Bench-routes running. You should get something like this in the logs.

```shell
[hsingh@localhost src-linux-amd64]$ ./src-linux-amd64.sh
[hsingh@localhost src-linux-amd64]$ ./src-linux-amd64.sh
LOG: 2021/03/10 21:59:14.263315 main.go:55 initializing...
LOG: 2021/03/10 21:59:14.266505 main.go:295 forming req_res chain ...
LOG: 2021/03/10 21:59:14.266505 main.go:295 forming req_res chain ...
https://www.google.co.insearch
LOG: 2021/03/10 21:59:14.266584 main.go:295 forming flood_ping chain ...
LOG: 2021/03/10 21:59:14.266584 main.go:295 forming flood_ping chain ...
LOG: 2021/03/10 21:59:14.266688 db.go:132 creating chain at storage/req-res-delay-monitoring/chunk_req_res_https___www.google.co.in_search.json
LOG: 2021/03/10 21:59:14.266736 db.go:132 creating chain at storage/flood-ping/chunk_flood_ping_google.co.in.json
LOG: 2021/03/10 21:59:14.266749 main.go:295 forming jitter chain ...
LOG: 2021/03/10 21:59:14.266808 main.go:295 forming ping chain ...
LOG: 2021/03/10 21:59:14.266749 main.go:295 forming jitter chain ...
LOG: 2021/03/10 21:59:14.266808 main.go:295 forming ping chain ...
LOG: 2021/03/10 21:59:14.266926 db.go:132 creating chain at storage/ping/chunk_ping_google.co.in.json
LOG: 2021/03/10 21:59:14.266873 db.go:132 creating chain at storage/jitter/chunk_jitter_google.co.in.json
https://www.facebook.comsearch
Expand Down Expand Up @@ -86,7 +86,7 @@ This should start running Bench-routes in the current terminal.

## Install from source

Since the project is in active development in early stages, the recent master commits will always be more stable than
Since the project is in active development in the early stages, the recent master commits will always be more stable than
the alpha releases. This makes a lot of sense to install and use the most recent code from development.

You can install and run from source in 3 ways:
Expand All @@ -113,7 +113,7 @@ This simply runs the following command
go run src/*.go 9990
```

This means that you can also use that command to run directly.
This means that you can also use the above command to run directly.

Note: If you want to run Bench-routes at a port other than `:9990`, just change the last argument to the port you
want to keep.
Expand Down