# TrobleShooting(Network)

## Checking network configuration

We provide a simple tool that can check your network configurations.\
This tool checks the network status between Pinpoint-Agent and Pinpoint-Collector

## Testing with binary release

If you have downloaded the build results from our [**latest release**](https://github.com/pinpoint-apm/pinpoint/releases/latest).

1. Start your collector server
2. With any terminal that you are using, go to *script* folder which is under *pinpoint-agent-VERSION.tar.gz* package that you have downloaded.

```
> pwd
/Users/user/Downloads/pinpoint-agent-1.7.2-SNAPSHOT/script
```

and run *networktest.sh* shell script

```
> sh networktest.sh
```

You will see some CLASSPATH and configuration you have made in the *pinpoint.config* file as below

```
CLASSPATH=./tools/pinpoint-tools-1.7.2-SNAPSHOT.jar
...Remainder Omitted...
2018-04-10 17:36:30 [INFO ](com.navercorp.pinpoint.bootstrap.config.DefaultProfilerConfig) profiler.enable=true
2018-04-10 17:36:30 [INFO ](com.navercorp.pinpoint.bootstrap.config.DefaultProfilerConfig) profiler.instrument.engine=ASM
2018-04-10 17:36:30 [INFO ](com.navercorp.pinpoint.bootstrap.config.DefaultProfilerConfig) profiler.instrument.matcher.enable=true
...Remainder Omitted...
```

And after that, you will see the results. (In this case, collector server was started locally) If you receive all six SUCCESSes as below, then you are all set and ready to go.

```
UDP-STAT:// localhost
    => 127.0.0.1:9995 [SUCCESS]
    => 0:0:0:0:0:0:0:1:9995 [SUCCESS]

UDP-SPAN:// localhost
    => 127.0.0.1:9996 [SUCCESS]
    => 0:0:0:0:0:0:0:1:9996 [SUCCESS]

TCP:// localhost
    => 127.0.0.1:9994 [SUCCESS]
    => 0:0:0:0:0:0:0:1:9994 [SUCCESS]
```

## Testing with source code

The idea is basically the same.

1. Start your collector server
2. Pass the *path* of the pinpoint.config file as a *program argument* and run ***NetworkAvailabilityChecker*** class.
3. (only for under v1.7.2)For the few who gets JNI error while running. Please remove `<scope>provided</scope>` line from pom.xml under *tools* module and try again

Results should be same as shown above.

> If you face error for v1.7.3 take a look at this [issue](https://github.com/pinpoint-apm/pinpoint/issues/4668)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://pinpoint-apm.gitbook.io/pinpoint/v2.3.1/getting-started/troubleshooting_network.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
