Skip to content
Localtonet Localtonet Dashboard

Logs and request inspection

On this page 8 sections
  1. What is available where
  2. Request inspector for HTTP tunnels
  3. Open the inspector
  4. The request list
  5. Request and response details
  6. Replay a request
  7. Turn request logging off and on
  8. Connection log for other tunnels
  9. Download the log as CSV
  10. Activity Log
  11. Tunnel Health
  12. When a tunnel stops
  13. Troubleshooting
  14. Related pages

See what happens on a tunnel: inspect and replay the HTTP requests it receives, list the connections made to it, read the log of starts, stops and setting changes, and check its health over the day. This page also shows where to look when a tunnel has stopped.

What is available where #

All of these are rows in the tunnel's settings panel: open the page of the tunnel type under My Tunnels and select Settings in the row of the tunnel.

RowWhat it opensTunnel types
Request LogThe request inspector, with the recorded requests and responses.HTTP, MCP Gateway
Request LogThe connection log: who connected, when, and to where.TCP - UDP, TLS, File Server, Proxy Server
Activity LogStarts, stops and setting changes of the tunnel.Every tunnel type
Tunnel HealthThe results of the regular health checks.Every tunnel type except File Server
Bandwidth TrafficThe data that went through the tunnel. See Limits and expiration.Every tunnel type

A Rotating Proxy keeps its request logs per client: use the Request logs button of a client. See Rotating Proxy.

Request inspector for HTTP tunnels #

The inspector shows the HTTP requests that reach an HTTP or MCP Gateway tunnel, with their headers and bodies and the responses your service gave. Use it to debug webhooks and API calls without adding logging to your own code. Requests are recorded only after you turn logging on, as described below.

The record is not a byte-for-byte copy. A body is stored up to 16 KB, and only for text formats such as JSON, XML, HTML, plain text and URL-encoded form data. The values of sensitive headers, such as Authorization, Cookie and X-Api-Key, are stored as [MASKED].

Open the inspector #

  • In the tunnel settings, select Request Log › Show, or
  • in the tunnel list, select the button with the tooltip View request & response logs. This button asks you to start the tunnel first if it is stopped. For tunnels whose Server column shows Local or VPN it is disabled, with the tooltip "Not available for Client Relay".

The Inspector page opens in a new tab.

The request list #

The card HTTP Requests lists the requests, newest first, and loads more as you scroll. While the badge shows Live, the list refreshes every 3 seconds.

ColumnWhat it shows
MethodThe HTTP method, such as GET or POST.
EndpointThe path that was requested.
Country, IPWhere the request came from.
DatetimeWhen it arrived, in the time of your browser.
StatusThe HTTP status code your service answered with.
DurationHow long the answer took, in seconds.

Without a filter the list covers the last 24 hours. Filter by Date offers Today, Yesterday, Last 7 Days and Custom Range, and covers today and the six days before it. A date filter pauses the live list; select Go Live to return to it. Inspection logs are kept for up to 7 days.

Request and response details #

Select a request to open its details.

PartTabWhat it shows
RequestSummaryRequest ID, request IP, method, host, path, full URL, timestamp, URL length and the number of headers.
RequestHeadersEvery request header with its value.
RequestBodyThe request body. JSON is formatted for reading. Copy copies it.
RequestIP IntelTime zone, continent, country, city, postal code, region and coordinates of the visitor's IP address.
ResponseSummaryResponse ID, status, response time and the number of headers.
ResponseHeaders, BodyWhat your service sent back.

Replay a request #

Replaying saves you from triggering the same webhook again at the sender.

  • Replay sends the selected request again from its record. The page shows "Request replayed successfully." as soon as the replay has been requested; it does not wait for the result.
  • Modify opens Modify Request, where you can change the method (GET, POST, PUT, DELETE or PATCH), the Path, the headers (Add Header) and the Body before you select Replay.

The Localtonet app on the tunnel's device sends the replayed request, so the app must be connected.

Turn request logging off and on #

Requests are only captured while logging is on, and a tunnel starts with logging off. While it is off, the page shows "Request logging is disabled - new requests will not be captured." with the button Enable Logging. Disable Logging stops capturing new requests again. Turn logging off for a tunnel that carries data you do not want stored, such as passwords or personal data in request bodies. The change is written to the Activity Log as "HTTP webhook setting changed."

Connection log for other tunnels #

On TCP - UDP, TLS, File Server and Proxy Server tunnels, Request Log › Show opens the Request log dialog. It lists the connections made to the tunnel, newest first, 30 per page.

ColumnWhat it shows
Visitor IPThe address that connected to the tunnel.
Client IPThe client address recorded for the connection.
DestinationWhere the connection went. For a proxy tunnel this is the host and port visited.
DateWhen it happened, in your account's time zone.

This log holds connection metadata only. It does not contain what was sent over the connection.

Download the log as CSV #

Under Download as CSV, choose a date range of up to 30 days and select Download. The file name starts with RequestLogs-, followed by the internal identifier of the tunnel, and ends with .csv. It has the columns Date & time, Request IP, Client IP, Destination, Token and Protocol. For a longer period, download several ranges one after the other. Downloads are limited to one per minute, so wait a minute between two of them.

Activity Log #

Activity Log › Show lists what happened to the tunnel itself, newest first. Each entry has the date and time in your account's time zone, the channel the action came from, and a sentence that says what changed.

ChannelThe action came from
WebThe dashboard.
APIThe API.
CLIThe command line.
SystemLocaltonet itself, for example when a limit was reached.

Typical entries:

  • Tunnel started.
  • Tunnel stopped.
  • Local port changed from "3000" to "8080".
  • IP restriction added: "203.0.113.10"
  • Bandwidth limit changed: "10.00 GB"
  • Expiration date turned off.

A new or changed password is not written to the log. It shows up as "Password set." or "Password changed."

Tunnel Health #

Tunnel Health › Show opens the Health checks dialog. Localtonet checks the tunnel every 10 minutes. Each square is one check, by time of day, for the current day.

ValueMeaning
HealthyThe tunnel was connected at that check.
UnhealthyThe tunnel was not connected at that check.
UnknownThere is no result for that time or for any earlier time.
No dataThe time has not come yet today.
UptimeThe share of healthy checks among the healthy and unhealthy ones.

When the dialog has no squares to show, it says "No checks recorded yet. Results appear here once the tunnel has been running for a while."

When a tunnel stops #

Open the tunnel's Activity Log first. The newest "stopped" entry gives the reason.

Activity Log entryWhat happenedWhat to do
"Tunnel stopped."Someone stopped it. The channel shows where the action came from, for example Web for the dashboard or API.Select Start.
"Tunnel stopped because the tunnel bandwidth limit was reached."The tunnel's own Bandwidth Limit was reached.Raise the limit or reset the usage. See Limits and expiration.
"Tunnel stopped because its expiration date was reached."The tunnel's Expiration Date passed.Set a later date or turn it off. See Limits and expiration.
"Tunnel stopped because the free usage limit was reached."The session limit of the Free plan was reached.Select Start to begin another session, or add Balance. See Plans and Balance.
"Tunnel stopped because the total bandwidth limit was exceeded."The bandwidth of the account is used up.See Plans and Balance.
"Tunnel stopped because it was inactive and had no connections."Localtonet stopped a tunnel that was started but not connected.Keep the Localtonet app connected and select Start when you need the tunnel again.

If the log shows no stop but the address does not answer, check the Connection column of the tunnel list. OFF means the tunnel is not connected: start the Localtonet app on the device. When you select Start while the app is offline, the dashboard opens a dialog titled "NAME is offline" with the text "Waiting for the app to connect…". The tunnel starts by itself as soon as the app connects; Start anyway turns the tunnel on now, and it goes live when the app connects.

Get told when a tunnel goes down. The Webhooks page of the dashboard can send a JSON POST request to your URL when a tunnel connects or disconnects. See Webhooks.

Troubleshooting #

"Please start your tunnel first."

The inspector button in the tunnel list only opens for a running tunnel. Start the tunnel, or open the inspector with Request Log › Show in the tunnel settings.

The inspector stays empty

Check three things: the banner "Request logging is disabled" is not shown; no date filter is active (select Go Live); and the request really reaches the tunnel address, not another address of your service.

"No requests recorded yet." or "Data not found!"

The connection log has no entries for the tunnel, or none in the date range you chose for the CSV. Choose another range.

"No logs found for this tunnel."

The Activity Log has no entries yet. It fills as the tunnel is started, stopped and changed.

Support