1. Home
  2. Developer tools
  3. Redact Log Secrets

Redact Log Secrets

Share a log, stack trace or config in a ticket, forum or AI chat without leaking credentials or customers’ personal data.

Free, no sign-up. Runs in your browser: nothing is uploaded.

How to use Redact Log Secrets

  1. Paste the text.
  2. Choose what to redact.
  3. Check the output and copy or download it.

Features

  • JWTs, AWS, GitHub, Stripe, Slack, Google and sk- API keys
  • PEM private keys, Bearer and Basic headers, passwords in URLs and key=value pairs
  • Emails, IPv4 and IPv6, Luhn-checked card numbers, phone numbers and UUIDs
  • Same value → same placeholder, so log lines stay comparable
  • Count of replacements per category

Supported formats

You can open

  • LOG
  • TXT

You get

  • LOG
  • TXT

Private by design

Your files are opened and processed by your browser on this device. They are never uploaded to openWorkstand or anyone else, so the Redact Log Secrets is safe for contracts, IDs, photos and work documents. After you have used it once while online, it also works without an internet connection. How local processing works

Good to know

  • Pattern matching can miss secrets in unusual formats; review the output before sharing.

Guide

Removing secrets and personal data from logs before sharing them

Logs, stack traces and config files are the first things people paste into support tickets, forums and AI chats, and they are full of things that should stay private: API keys, session tokens, passwords in connection strings, customers’ email addresses and IP addresses. This tool finds those patterns and replaces them with placeholders, so what you share still shows what went wrong without showing who or how to log in.

What it finds

The rules fall into three groups. Credentials include JSON Web Tokens, AWS access keys, GitHub tokens, Stripe and Slack keys, Google API keys, keys starting with sk-, PEM private-key blocks, Bearer and Basic authorisation headers, passwords inside URLs such as postgres://user:password@host, and values after names like password, secret, token or api_key. Personal data covers emails, IPv4 and IPv6 addresses, payment cards and phone numbers in international format. UUIDs can be masked too, which helps when identifiers could link records to people.

Numbered placeholders

The same value always becomes the same placeholder when the consistency option is on: the first email is [EMAIL_1], the second [EMAIL_2], and every later occurrence of the first keeps _1. That keeps the story of the log intact. You can still see that one user logged in, failed twice and logged out, without knowing who it was. With the option off, every match becomes a fixed label like [EMAIL], which is shorter but hides repetition.

Avoiding false positives

Long numbers appear in logs for harmless reasons. Card-like digit sequences are only replaced if they pass the Luhn checksum that real card numbers satisfy, so order numbers and timestamps stay readable. IPv6 and UUID matching is off by default because they also match timestamps, hashes and identifiers that are often needed to debug. Switch rules on or off with the chips, and the counts show how many replacements each rule made.

A worked example

The Sample is six log lines. The result replaces the repeated email with [EMAIL_1] in both lines, the IP address with [IP_1], the JWT in the Authorization: Bearer header with [JWT_1], the AWS key with [AWS_KEY_1], the card number with [CARD_1] and the phone number with [PHONE_1]. The database URL becomes postgres://app:[PASSWORD]@db.internal:5432/shop, keeping the host and port for debugging while dropping the password. The UUID stays, because that rule is off by default.

What pattern matching misses

Only formats the rules know are caught. A custom token with no recognisable prefix, a password in free text, a customer’s name, an internal host name, an address or a medical detail will pass through unchanged. Read the output before sharing it, search it for anything that looks like a credential, and prefer sharing the smallest excerpt that shows the problem.

If a secret has already leaked

Redacting a log you have already posted does not undo the exposure. Pages and chats are cached, indexed and copied, and automated scanners look for leaked keys within minutes. Revoke or rotate the credential at the provider, check its recent use, and only then clean up the post. For personal data, you may have notification duties under data protection law.

Privacy

The text is processed in the page and never uploaded; the input is deliberately not saved in the browser, so closing or reloading the tab removes it. Do not rely on any single tool as the only safeguard when the data is highly sensitive.

  • HAR Analyzer opens network captures, which hold cookies and tokens that this tool can mask.
  • Access Log Analyzer summarises logs whose IP addresses you may want to remove first.
  • Anonymize CSV Data masks personal columns in spreadsheets.
  • JWT Decoder shows what a token contains before you decide to share it.

Checked against the current version of the Redact Log Secrets on .

Troubleshooting

The file does not open

Check that it is one of the supported formats above and opens in another app. Damaged files and password-protected PDFs cannot be read until they are repaired or unlocked.

It is slow or stops on a very large file

Everything runs on your device, so speed depends on its memory. Close other tabs, use a computer rather than a phone, or split the file into smaller parts first.

The download did not start

Look for your browser’s download bar or icon. Some browsers ask once before a site may download files; allow it and click the button again.

Frequently asked questions

Is it safe to paste logs into an AI chat after redacting?

It lowers the risk, but check the output yourself first. Pattern matching misses secrets in unusual formats, and business data such as customer names or internal host names is not recognised. If the log is covered by a confidentiality agreement, use only what the agreement allows.

Why does the card number rule check the Luhn sum?

Long digit strings are common in logs: order numbers, timestamps, IDs. Real card numbers satisfy the Luhn checksum, so requiring it avoids blanking ordinary numbers while still catching genuine cards, including test numbers like 4111 1111 1111 1111.

Why keep the same placeholder for the same value?

So the log still tells a story: you can see that [EMAIL_1] logged in, failed twice and logged out, without seeing who it was. Random or identical placeholders would hide that.

I already posted a log with a key in it. Is redacting it now enough?

No. Treat the key as compromised: revoke or rotate it at the provider. Pages, chats and tickets are cached, indexed and copied, and automated scanners look for leaked keys within minutes.

Keep working with the result

After you download, choose “Save to Workstand” to keep the result in a folder on your computer, attach it to a project and create a follow-up task. It is saved by your browser, not uploaded.