Redact secrets from logs, right in your browser
Need to paste a log into a ticket, a chat or an AI assistant? LogShaper strips the sensitive parts first. Secrets, emails and IP addresses are replaced with clear markers like [SECRET_REDACTED], while the rest of each line stays readable, and key names are kept so you can still see which field held a secret.
How to use it
- Paste your logs into the box above. An example is already loaded so you can see the result.
- Choose what to redact: IP addresses, keys and tokens, and emails are all on by default.
- Click Parse & Normalize Schema, then copy or download the JSON, the JSON Schema, or a CSV from the Data Grid.
What you get
- Sensitive key=value pairs:
password,token,secret,api_key,access_key,private_key,cookie,session_idand variants - JSON fields: the same key names at any depth inside JSON logs
- Auth headers:
Authorization: Bearer …, Basic and Token schemes - Known token formats: JWTs, Stripe keys, GitHub tokens, AWS access key IDs, Slack tokens, Google API keys and PEM private keys, even with no key name
- Emails: replaced with
[EMAIL_REDACTED] - IP addresses: IPv4 and IPv6, replaced with
[IP_REDACTED]
Example
2026-11-11T09:12:44Z INFO request GET /v1/orders authorization="Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI0MiJ9.c2lnbmF0dXJl" client_ip=198.51.100.23
2026-11-11T09:12:45Z WARN deploy using AWS key AKIAIOSFODNN7EXAMPLE for user [email protected]
{"ts":"2026-11-11T09:12:46Z","level":"error","msg":"payment failed","customer_email":"[email protected]","stripe_key":"sk_test_51Hfake00example","db":{"host":"10.2.0.7","password":"hunter2"}}
2026-11-11T09:12:47Z DEBUG git clone with token ghp_abcdefghijklmnopqrstuvwxyz0123456789 from 2001:db8::42
[
{
"timestamp": "2026-11-11T09:12:44Z",
"level": "info",
"message": "request GET /v1/orders authorization=\"Bearer [SECRET_REDACTED]\" client_ip=[IP_REDACTED]",
"authorization": "[SECRET_REDACTED]",
"client_ip": "[IP_REDACTED]"
},
{
"timestamp": "2026-11-11T09:12:45Z",
"level": "warn",
"message": "deploy using AWS key [SECRET_REDACTED] for user [EMAIL_REDACTED]"
},
{
"ts": "2026-11-11T09:12:46Z",
"level": "error",
"msg": "payment failed",
"customer_email": "[EMAIL_REDACTED]",
"stripe_key": "[SECRET_REDACTED]",
"db": {
"host": "[IP_REDACTED]",
"password": "[SECRET_REDACTED]"
}
},
{
"timestamp": "2026-11-11T09:12:47Z",
"level": "debug",
"message": "git clone with token [SECRET_REDACTED] from [IP_REDACTED]"
}
]
Questions
Will it catch every secret?
No tool can promise that. Redaction works by recognizing known patterns and key names, so a password written in plain prose or a custom token format can slip through. Always review the output before sharing it.
Can I redact only some things?
Yes. Each rule (IPs, keys/tokens, emails) has its own checkbox, and the output updates as you toggle them.
Is it safe to paste real production logs here?
The page can't send data anywhere: its Content Security Policy blocks all network requests, and there's no server behind it. Your browser enforces that, not just a promise.
Is LogShaper free?
Yes. There's no sign-up, no limit and no ads.
More LogShaper tools
Keep LogShaper free
LogShaper has no ads, no tracking and no sign-up, and that's not going to change. If it saved you some time, a small donation helps cover hosting and new features.
♥ Support LogShaper