Nothing matched. Try fewer words, or the exact text of the error message.
Contact support
Write to support@onyxinsights.global. A request that includes the details below usually gets a useful first reply instead of a list of questions.
What to include
- Your organization ID. Workspace admins can find it in Governance, under Single sign-on, as “Organization ID”. Otherwise send the workspace name from the account menu.
- What you did, what you expected, and what happened. Copy the exact error text.
- When it happened, with the time zone. The account menu shows whether the app is displaying Local or UTC times.
- For missing data: the service name, the signal (traces, logs or metrics), and the reason shown for rejected requests on the System page.
- For a trace or a payment: the trace ID or payment ID.
- The severity you think applies, from the table below, and how many people are affected.
Organization ID or workspace: Your role (Admin or Viewer): Severity (S1 to S4) and who is affected: What I did: What I expected: What happened (exact error text): When (with time zone): Service name, trace ID or payment ID, if relevant: System page reason for rejected requests, if data is missing:
Support will never ask for your password, a two-step verification code, a recovery code, or the value of an API token. To identify a token, send its name as shown in Governance. If a token has been exposed, revoke it and create a new one.
Severity and first-response targets
Pick the severity that matches the effect on your business. We may change it after the first look and will tell you if we do.
| Severity | When it applies | Standard plan | Enterprise plan |
|---|---|---|---|
| S1 Critical | Onyx Insights is unavailable, nobody in your organization can sign in, or no telemetry is being accepted. No workaround. | 4 business hours | 30 minutes, 24×7 |
| S2 High | A core function is down or badly degraded, such as one signal not arriving, queries failing, or alerts not raised. No workaround. | Next business day | 4 hours, 24×7 |
| S3 Medium | Something is wrong but you can keep working, or there is a workaround. | 2 business days | 1 business day |
| S4 Low | Questions, documentation errors, cosmetic defects and feature requests. | 4 business days | 2 business days |
- These are targets for our first response. They are not a promise of when the problem will be fixed.
- Business hours are 08:00 to 17:00 GMT, Monday to Friday, excluding public holidays in Ghana.
- Trial workspaces get help from this page, the documentation and email on a best-effort basis, with no response target.
- For S1, put S1 at the start of the subject line.
Other places to look
Documentation
Step-by-step guides for each feature. docs.onyxinsights.global
In the app
The “i” buttons explain a number or chart in place. The account menu has a link back to the documentation.
Your workspace admin
Invites, roles, tokens, single sign-on and billing are controlled by your own admins. Support cannot grant you access to someone else's workspace.
First checks
Five things that explain most “it looks wrong” reports.
The page is empty or the numbers look too low #
Check the Time range in the top bar first. It applies to almost every page and defaults to a short window. Choose a longer one and look again. The picker offers ranges up to what your plan keeps: 14 days on Trial, 30 on Standard and 90 on Enterprise.
Then check the Workspace in the account menu. Each workspace and environment has its own data.
Times are off by some hours #
Open the account menu and look at Time zone. It is either Local or UTC and it applies to every timestamp in the app. Usage counts on Usage & Billing always reset at 00:00 UTC, whichever you choose.
I see data I don't recognise #
The Solution Area pages (NexusView, AppPulse, NeuralWatch, Prism, StreamLens, VaultGuard, SentinelView, FlowForge, LedgerPulse) and the Payments pages have a Preview with sample data switch. When it is on, the page shows a banner reading “Sample data — not from your systems” and every card carries a Sample badge. None of it describes your workspace. Choose Hide sample data to return to your own data.
In Query Studio, the section called “Sample-data query (legacy)” also reads example data only, never your OpenTelemetry data.
The page looks out of date #
The top bar shows “Updated … ago”. Choose Refresh there, or Reload in the account menu to reload the whole workspace. If the status line says “Refresh failed”, wait a minute and try again. If it keeps failing, contact support with the time it started.
A button is missing or disabled #
You are probably a Viewer. Viewers can read everything in the workspace but cannot change it. Pages say so with notes such as “View only”, “Read-only mode” or “Only workspace admins can…”. Your role is shown at the top of the account menu. Ask an admin in your organization to make the change or to make you an admin. See what each role can do.
Signing in
Passwords, lockouts, reset links and choosing the right sign-in button.
Which sign-in button should I use? #
| You have | Use |
|---|---|
| An email and password you chose | Work email and Password, then Sign in. |
| A company that signs you in with its own identity provider | Type your work email and wait a moment. A button reading Continue with <your company> SSO appears. Use it. |
| An account you created with a personal Google or Microsoft account | Continue with Google or Continue with Microsoft. |
| An Onyx Group staff account, or an Onyx customer account | The two buttons under the social options. They are for Onyx-issued accounts only. |
Continue with Google or Microsoft always means a personal account. If your company has set up single sign-on, those buttons are refused and you must use the company SSO button instead.
“That email and password don't match. Check them and try again.” #
The message is the same whether the email is unknown or the password is wrong. We do this on purpose so the form cannot be used to discover who has an account.
- Check the email for typos, and that you are using the address you signed up or were invited with.
- Use Show beside the password field to check what you typed.
- If you normally use a company SSO button or Google or Microsoft, your account may have no password at all. Use that button.
- Otherwise choose Forgot password?
Five failed attempts in 15 minutes locks sign-in for that email from your network. See the next answer.
“Too many sign-in attempts. Wait a few minutes and try again.” #
After 5 failed attempts within 15 minutes, sign-in for that email address from your network is blocked for 15 minutes. Nobody can lift the block early, including support. Wait 15 minutes, then sign in once with the right password. If you are not sure of the password, request a reset link while you wait.
Resetting a forgotten password #
- On the sign-in form choose Forgot password?
- Enter the email you sign in with and choose Send reset link.
- Open the email with the subject “Reset your Onyx Insights password” and follow the link within 1 hour.
- Choose a new password of at least 8 characters. Longer, with numbers or symbols, is stronger.
The form always answers that a link is on its way if the account exists. It never confirms whether an address is registered.
The reset email never arrived #
- Check spam and quarantine folders for the subject “Reset your Onyx Insights password”.
- Make sure you entered the address the account uses. No email is sent for an address with no account.
- Accounts that sign in through a company identity provider have no password, so no reset email is sent. Use your company SSO button.
- If your company filters mail, ask your mail administrator to allow mail from Onyx Insights.
“Reset link is invalid or has expired” #
Reset links work for 1 hour and only once. A link can also stop working earlier when the service is updated. Request a new link and use it straight away. If you requested several, only use the newest email.
“Your workspace requires you to sign in with your company SSO” #
Your organization's admins connected an identity provider, and it now decides how people in your organization sign in. Personal Google or Microsoft sign-in and Onyx accounts are refused so that they cannot bypass your company's own sign-in rules. Type your work email on the sign-in form and use the Continue with <company> SSO button that appears.
I was signed out while I was working #
A session lasts 12 hours from the moment you sign in, whether or not you are active. After that you sign in again. There is no separate idle timeout.
After signing out, my identity provider asks for my password again #
That is intended. When you choose Logout, the next single sign-on from that browser asks your identity provider to authenticate you again instead of silently reusing its session. It protects shared computers.
“An account with this email already exists.” when creating an account #
Each email address belongs to one account. Sign in instead, or reset the password. If you were trying to join a colleague's organization, you need an invite sent to an address that does not already have an account. See joining an existing team.
“Banking and government accounts are hosted in a dedicated region.” #
Organizations in banking and government are hosted in a dedicated region and cannot be created through self-service sign-up on this site. Contact support to have one set up. If you chose that industry by mistake, pick a different one and submit again.
Two-step verification
Authenticator apps, email codes and recovery codes. Open it from the account menu, under Security.
Turning on two-step verification #
- Open the account menu and choose Security.
- Beside Authenticator app choose Set up. Scan the QR code with an app such as 1Password, Google Authenticator, Microsoft Authenticator or Authy. If you cannot scan, type the key shown under the code.
- Enter the 6-digit code from the app. You have 15 minutes before the setup times out.
- Save the 10 recovery codes that appear. Use Copy or Download .txt. This is the only time they are shown.
You can also turn on Email code, which sends a 6-digit code to your address each time you sign in. We recommend the authenticator app, with email codes as a second method.
“That code didn't work. Check it and try again.” #
- Authenticator codes change every 30 seconds. Enter the current one.
- Set your phone's clock to automatic. A phone that is a minute or more off produces codes we cannot accept.
- Each code works once. If you just used it, wait for the next one.
- Make sure you picked the right method at the top of the form. An email code typed into the Authenticator field fails.
- Email codes expire after 10 minutes, and each one allows 5 attempts.
“Too many incorrect codes. Try again in N minutes.” #
5 incorrect codes lock two-step verification on your account for 15 minutes. The lock covers every method, so switching from the authenticator to a recovery code does not get round it. Wait for the time shown, then try once with a code you are sure of.
I lost my phone or my authenticator app #
- On the verification step choose Recovery code and enter one of the codes you saved, in the form
xxxxx-xxxxx. Each works once. - Or, if you turned on email codes, choose Email code.
- Once you are in, open Security, remove the old authenticator, set up the new one, and choose Make new codes to replace your recovery codes.
If you have no working method left, write to support from the email address on the account. We have to verify who you are before changing sign-in settings, so this is slower than using a recovery code.
The email code didn't arrive #
Look for the subject “Your Onyx Insights sign-in code”, including in spam. The code is never in the subject line. You can ask for another after 30 seconds, up to one a minute and five an hour. Only the newest code works. If none arrive, use a recovery code or your authenticator app.
“Your sign-in expired. Sign in again.” #
After entering your password you have 10 minutes to complete the verification step. Go back to sign in and start again.
“Setup timed out. Start again to get a new QR code.” #
A QR code is valid for 15 minutes. Choose Set up again, delete the entry you added to your authenticator app earlier, and scan the new code.
“Your workspace requires two-step verification.” #
An admin in your organization requires it for everyone. You are asked to turn on at least one method before you can continue, and the only other option is to sign out. While the requirement is on you cannot remove your only method. Add a second method first if you want to replace one.
Admins: requiring two-step verification for everyone #
- Turn it on for your own account first. The setting stays disabled until you do.
- Open Governance and find the two-step verification policy.
- Tick Require two-step verification for all members.
Governance then shows how many people have not set it up yet. They are asked to the next time they use Onyx Insights. People who sign in through your single sign-on are not affected, because your identity provider handles their verification.
Security says there is nothing to set up #
You sign in through your organization's single sign-on. Two-step verification for your account is handled by your identity provider, so ask your IT team about it.
Email confirmation
New accounts are asked to confirm their address. Until then a few admin actions are held back.
What can't I do until my email is confirmed? #
You can use the product normally. Four actions wait for confirmation: creating API tokens, inviting team members, changing billing and enabling single sign-on. If you try one, you see “Confirm your email address before you …”.
Accounts created through your company's single sign-on, or with a Google account, are already confirmed. Accounts created with a personal Microsoft account are always asked to confirm.
Getting a new confirmation email #
Sign in and choose Resend email in the banner at the top of the app. The subject is “Confirm your email address for Onyx Insights”. The link works for 24 hours and only once. You can resend once a minute and five times an hour. If you see “A confirmation email was sent moments ago” or “Too many confirmation emails were requested”, wait for the time shown.
“This confirmation link has expired” or “isn't valid or was already used” #
Sign in and use Resend email to get a new link. If you have several emails, only the newest link works. “This confirmation link is incomplete” means the address was cut off when copied. Open the link from the email itself.
If the app already says your address is confirmed, there is nothing more to do.
Single sign-on
For workspace admins connecting a SAML 2.0 or OpenID Connect identity provider. The step-by-step guide is in the documentation.
What do I give my identity provider, and what do I need from it? #
Open Governance, then Single sign-on. The “Service provider details” panel has the two values to copy into your identity provider:
- Metadata URL, which is also the SP entity ID. It ends in
/api/sso/saml/metadata. - ACS (reply) URL. It ends in
/api/sso/saml/callback.
For OpenID Connect, register the redirect URI ending in /api/sso/oidc/callback on the same host.
| Protocol | Fields you enter |
|---|---|
| OpenID Connect | Discovery URL (ends in /.well-known/openid-configuration), Client ID, Client secret. Scopes requested: openid email profile. |
| SAML 2.0 | Identity provider entity ID, sign-in URL and signing certificate (PEM). Or upload the provider's metadata XML and choose Fill in from file. |
SAML requirements: assertions must be signed, the response is sent by HTTP-POST, and the NameID should be the user's email address. Sign-in must start from Onyx Insights. A response we did not ask for is refused.
How email domains decide who uses SSO #
List your domains in Email domains, separated by commas. When someone types an address on one of those domains on the sign-in form, the company SSO button appears for them. People on those domains can then no longer use personal Google or Microsoft sign-in.
With single sign-on switched on and no domains listed, the identity provider governs all members of the organization, whatever their address. List your domains unless that is what you want.
A domain can belong to one organization only. “The email domain … is already claimed by another workspace” means another organization listed it first. Contact support if that organization is not yours.
What happens the first time someone signs in through SSO? #
Their account is created automatically as a Viewer, with the email marked as confirmed. They have no Onyx Insights password and cannot set one, and the Security dialog tells them two-step verification is handled by your identity provider. An admin can change their role on the Team page.
Testing without locking yourself out #
- Save the settings, then choose Test single sign-on. It opens your sign-in page in a new tab.
- Keep your current admin tab signed in while you test, so you can correct the settings if the test fails.
- Test with a second person before telling the whole company.
You can switch Status to Off at any time to go back to the previous sign-in methods.
SSO error messages #
| Message | Cause and fix |
|---|---|
| This email domain is not allowed to sign in to this workspace | The identity provider returned an address whose domain is not in your Email domains list. Add the domain, or fix the email attribute your provider sends. |
| This email already belongs to another workspace | The address already has an account in a different organization. An email can belong to one organization only. Use a different address or contact support. |
| OIDC discovery URL and client ID must be configured | The settings were saved without one of those fields. Complete them and save again. |
| XML parse error: … | The metadata file is not valid XML, or it is not the identity provider's metadata. Download it again from your provider, or type the three SAML fields by hand. |
| Confirm your email address before you enable single sign-on | The admin saving the settings has not confirmed their own email. See getting a new confirmation email. |
| The sign-in returns to Onyx Insights with an error after your provider accepts the password | Usually an unsigned assertion, a certificate that has been rotated at the provider, or a NameID that is not an email address. Update the signing certificate in Governance and check the NameID format. |
Team, invites and roles
Managed by workspace admins on the Team page.
Inviting someone #
- Open Team and find Invite a member.
- Enter their work email and choose a role, Viewer or Admin.
- Choose Send invite. We email them a link and also show it to you once, so you can share it yourself.
An invite link works once, for that email address only, and expires after 7 days. The link is not shown again. If it is lost, send a new invite. Inviting the same address again cancels the earlier link.
An invite link doesn't work #
| Message | What to do |
|---|---|
| This invite link has expired. Ask your admin for a new one. | More than 7 days have passed. The admin sends a new invite. |
| This invite link has already been used or was cancelled. | The account was already created (sign in instead), the admin revoked it, or a newer invite replaced it. Use the newest email. |
| This invite link isn't valid. | The link was cut off when copied. Open it from the email, or ask for a new one. |
| Use the email address this invite was sent to. | Sign up with exactly the invited address. To use another address, ask the admin to invite that one. |
| This shareable invite link is no longer accepted. | Multi-use links were retired. Ask your admin for a personal invite. |
| This workspace has no free seats. Ask your admin to add seats. | The plan's seats are all taken. See seats. |
Admins: errors when sending an invite #
- “Someone with this email already has an account.” An email belongs to one organization only. They must use a different address, or have their existing account removed by its own admin first.
- “All N seats on your plan are taken or invited.” Pending invites count towards seats. Revoke an invite you no longer need, remove a member, or upgrade.
- “Confirm your email address before you invite team members.” Confirm your own address first.
- “The email to … couldn't be sent.” The invite still exists. Copy the link shown and send it to them yourself.
I created an account but I'm not in my team's workspace #
Creating an account, including with Continue with Google or Microsoft, always creates a new organization. It never adds you to an existing one. To join your team, an admin there must invite you. Because an email can belong to one organization only, ask them to invite an address that does not already have an account, or contact support to have the account you created by mistake removed.
What each role can do #
| Role | Can | Cannot |
|---|---|---|
| Viewer | View dashboards, services, traces, logs, metrics, topology, incidents, alerts and reports. Run queries in Query Studio. See the list of API tokens. | Change anything. Create or revoke tokens, save queries, add connectors, create rules, declare incidents, invite people. |
| Admin | Everything a Viewer can, plus invite and remove members, change roles, manage connectors, tokens, alert rules, SLOs, dashboards, workflows, incidents, log processing rules, single sign-on and billing. See the audit trail. | See or act on other organizations. |
| Platform admin | Onyx staff access across organizations, used for support and administration. | Not available to customers. |
Custom roles are not available yet.
Changing a role or removing someone #
On Team, use Make admin, Make viewer or Remove on the member's row. Removal takes effect immediately and you can invite them again later. You cannot remove your own account (“Cannot remove own account”). Ask another admin. Keep at least two admins so that one person leaving does not lock the organization out of its settings.
Removing someone does not revoke API tokens they created. Review the token list in Governance when an admin leaves.
Sending telemetry
Traces, logs and metrics arrive over OpenTelemetry (OTLP). Set up a service from Connect data, and check what is arriving on the System page.
My data isn't showing up #
Work through these in order. Most cases end at step 1 or 2.
- Open System. If requests are being refused, “Ingestion requests” lists them with the reason. A reason there tells you exactly what to fix.
- Check the token. It must be the complete value, have the Ingest telemetry scope, belong to this workspace, and be neither revoked nor expired. A
401always means the token. See 401 Unauthorized. - Check the endpoint. Copy it from Connect data rather than typing it. OTLP over HTTP uses the paths
/v1/traces,/v1/logsand/v1/metrics. Most SDKs add them for you when you set only the base endpoint. If your workspace has its own address (https://<key>.<domain>), send to that address; a token is only accepted on its own workspace’s address once the shared address is retired, and a wrong address also answers401. - Check the network. Your service needs outbound HTTPS to the ingest endpoint. Proxies and egress firewalls are the usual cause when nothing at all reaches us and System shows no requests.
- Wait a minute, then widen the time range. Traces and logs usually show within a minute of your service starting. Metrics are exported about once a minute by default, so they arrive after traces and logs.
- Check the workspace and the service name. Data goes to the workspace the token belongs to. Each service needs its own
service.name, or several services appear as one.
To test the path without touching your code, open the Connect data setup page and expand “Check the connection with a test event”. It gives you a ready-made command that sends one event as the service onyx-test-event.
401 Unauthorized, or “Invalid OTLP ingestion credential” over gRPC #
Every credential problem returns the same 401, so that the response cannot be used to probe for valid tokens. The System page shows the real reason to your admins. Check, in this order:
- The header is
Authorization: Bearer <token>. For gRPC it is theauthorizationmetadata key with the same value. - The whole token was copied. Tokens begin with
onyx_v2.and have three parts separated by dots. A missing last character is enough to fail. - No quotes, spaces or line breaks were added by your secret store or YAML file.
- The token has the Ingest telemetry scope, has not expired and has not been revoked. Check it in Governance, under API tokens.
- The token belongs to the workspace you expect.
If the token was lost, it cannot be shown again. Create a new one and revoke the old one.
Other responses from the ingest endpoint #
| HTTP | gRPC | Meaning | Fix |
|---|---|---|---|
| 200 | OK | Accepted. | Nothing. |
| 400 Malformed OTLP payload | INVALID_ARGUMENT | The body is not valid OTLP. | Send application/x-protobuf or OTLP/JSON, produced by an OpenTelemetry SDK or Collector. |
| 404 Not found | The path is not one of the three OTLP paths. | Use /v1/traces, /v1/logs or /v1/metrics. | |
| 405 Method not allowed | Something other than POST. | OTLP is POST only. A browser visit to the URL shows this and is harmless. | |
| 413 Malformed or oversized request body | RESOURCE_EXHAUSTED | The request is over 10 MB. | Lower the exporter's batch size. |
| 415 Unsupported Content-Encoding | Compression other than gzip. | Use gzip or no compression. | |
| 503 Temporarily unable to accept telemetry | UNAVAILABLE | We could not store the data just then. | Retry. OpenTelemetry exporters retry this automatically. Contact support if it lasts more than a few minutes. |
Using OTLP over gRPC #
gRPC uses port 4317 on its own hostname, which is different from the HTTP endpoint. Connect data shows the gRPC endpoint when it is available for your workspace. Authentication and the 10 MB message limit are the same as for HTTP. If your network only allows port 443, use OTLP over HTTP.
Traces arrive but metrics or logs don't #
- Metrics are exported on a timer, about once a minute by default. Give them two minutes.
- Many SDKs turn on traces by default but need the logs and metrics exporters enabled separately. Check
OTEL_LOGS_EXPORTERandOTEL_METRICS_EXPORTERfor your language. - System lists each signal with its own “Last received”. If a signal has never arrived, the exporter for it is not running.
Log shippers: Fluent Bit, Firehose, Vector, Logstash and others #
Open Integrations, then the Ingestion Shippers tab, and copy the URL for your shipper. These HTTP endpoints accept logs only. To send traces and metrics as well, use the OpenTelemetry setup instead.
- Authenticate with the header
x-onyx-api-key: <token>. A token in the URL is not accepted. - Name the workspace with
?workspace=<id>or the headerx-onyx-workspace. - Limits per request: 1 MB body, 500 events, 10,000 characters per message, 100 tags and 50 attribute keys per event.
- “No ingest events found in payload” means the body had no events in the shape that endpoint expects. Copy the example payload from the Integrations page.
- Your plan's daily limit applies here. See daily ingest limit.
Keeping sensitive data out of your logs #
Card numbers and bearer tokens are removed from every log line before it is stored, on every ingest path. Treat that as a safety net, and do not send secrets, card numbers or full phone numbers on purpose.
To mask anything else, open Logs, then Processing rules, and add a Mask text rule with a regular expression. Use Test on recent logs before saving. Rules run in order from the top, apply to new lines only, and reach the OpenTelemetry endpoint within about 10 seconds. A Drop lines rule discards matching lines permanently.
“Trace not found” or spans are missing from a trace #
- Trace not found: no spans with that ID arrived within your plan's retention (7, 30 or 90 days). It has either aged out or is still arriving. Try again in a moment.
- “N spans' parent was not received”: a service in the request path is not instrumented, is sending to a different workspace, or dropped the span through sampling. Those spans are shown at the top level.
- “This trace has more spans than can be shown”: the first spans by start time are listed. Use Find spans to reach the rest.
Real user monitoring and Payments data #
Real user monitoring data is sent through the HTTP ingest endpoints, not OTLP. Payments pages fill in when your services tag payment spans and logs with payment.id. There are no payment provider credentials to enter. See the Payments monitoring guide. Payments is part of the Enterprise plan.
API tokens
Created by admins in Governance, under API tokens. Each token belongs to one workspace. The AI analyst token is a read-only API token with the read scope. It is created for the workspace and never expires.
Creating a token and choosing scopes #
Name the token after where it will be used, tick the scopes it needs, choose an expiry (Never, 30 days, 90 days or 1 year; 90 days is the default) and choose Create API token. Copy the value at once. It is shown once and is not stored in a form we can show again.
| Scope | Allows |
|---|---|
| Ingest telemetry | Sending traces, logs and metrics. This is the only scope a service needs. |
| Read / query | Running queries through the query API. |
| Manage dashboards | Creating, updating and deleting dashboards. |
| Workspace configuration | Automating alerts, SLOs, workflows, connectors, incidents and similar settings. |
| Billing / usage (read) | Reading plan and usage information. |
No token, whatever its scopes, can manage members, other tokens, single sign-on or billing changes. Those need a signed-in admin. A workspace can hold 100 active tokens.
Rotating a token without losing data #
- Create a new token with the same scopes.
- Deploy it to your services.
- Watch System until data is arriving and the old token's “last used” stops moving. That value can lag by up to 5 minutes.
- Revoke the old token.
Revoking is immediate and cannot be undone. Telemetry sent with a revoked token is refused within about 10 seconds.
Token error messages #
| Message | Fix |
|---|---|
| This API token belongs to a different workspace | The request names one workspace and the token belongs to another. Use a token created in the workspace you are calling. |
| This API token doesn't have the '…' scope | Create a token that includes the scope named in the message. Scopes cannot be added to an existing token. |
| This action requires a signed-in workspace admin; API tokens can't perform it | Members, tokens, single sign-on and billing can only be changed by an admin in the app. |
| This workspace already has 100 active tokens. Revoke one first. | Revoke tokens that are no longer used. |
| Workspace keys were replaced by API tokens. | You are calling a retired endpoint. Older workspace keys were converted to tokens marked Converted key and still work. Manage them in Governance. |
| Confirm your email address before you create API tokens | See getting a new confirmation email. |
Connectors
Connectors pull data from another tool or a cloud account. Set them up from Integrations. Guides: connect a source, manage connectors.
What each connector needs #
| Connector | Required |
|---|---|
| Dynatrace | Tenant URL, such as https://mytenant.live.dynatrace.com, and an API token. |
| Datadog | Site (us1, us3, us5, eu1, ap1, ap2 or gov), API key and Application key. |
| Splunk | Host URL, HEC token and index. |
| AWS | Access key ID and secret access key. Optional: EC2 instance, ECS cluster and service, RDS instance, ALB resource ID, CloudWatch log group. |
| Azure | Tenant ID, subscription ID, client ID and client secret. |
| GCP | Project ID and a service account JSON key. |
Give each credential read-only permissions at the provider. Onyx Insights only reads.
The connector is set up but no new data appears #
Connectors do not poll on a schedule yet. Choose Sync now on the connector, or Pull Data on its detail page, each time you want the latest data. The row then shows what the last pull returned.
For AWS, choose Select Services to pick what to monitor, then sync. Today EC2, RDS, ECS and ALB return metrics. The other services in the list can be selected but do not return data yet.
Connector error messages #
| Message | Cause and fix |
|---|---|
| Datadog validation failed (N), Dynatrace pull failed (N), Splunk health pull failed (N), Connector pull failed (N) | The provider answered with HTTP status N. 401 or 403: the credential is wrong or lacks permission. 404: the URL or site is wrong. 429: the provider is rate limiting you. 5xx: the provider is having a problem. |
| Connector endpoint cannot target localhost or local domains. Connector endpoint cannot target private or loopback IP space. Connector endpoint resolves to a private or restricted network. | The endpoint must be reachable from the public internet. A Splunk or other server on a private network cannot be pulled from. Expose it through a public HTTPS address, or send its data to us with a log shipper or the OpenTelemetry Collector instead. |
| Connector endpoint must be a valid URL. Connector endpoint must use http or https. | Enter a full URL including https://. |
| Request timeout | The provider did not answer in time. Try again, and check that the host is correct. |
| This connector's credentials were saved by a newer version of Onyx Insights and can't be used here; re-enter them to sync. | Open Configure, type the credentials again and save. |
Why can't I see the credential I saved? #
Saved credentials are write-only. After saving, the form shows asterisks and at most the last 4 characters, so you can tell which credential is in place. Nobody can read the full value back, including admins and Onyx staff. When you edit a connector, leave the masked value alone to keep it, or type a complete new value to replace it.
Search and Query Studio
Guides: search logs, write a query.
“The query exceeded the 10 second limit” or “The query took too long” #
Queries stop after 10 seconds. Make the query read less: shorten the time range, add a filter on service, and group by fewer fields. A filter on an exact value is much cheaper than “contains”.
“The query needed more memory or rows than the data plane allows” #
Same remedy as a timeout. Narrow the time range, add filters, or group by fewer fields. Grouping by a field with very many values, such as a trace ID, is the usual cause.
“Check the query.” #
The text after it says which part is wrong. The limits are: 20 filters, 4 group-by fields, 8 aggregations, 50 values in an “is one of” filter, and 1 to 1,000 rows. Attribute keys may use letters, digits and _ . : / @ -, up to 128 characters.
A query or log search returns nothing #
- Every query follows the Time range in the top bar, including saved queries when you load them. Widen it.
- Log search matches text anywhere in the message and ignores case. It does not search attributes. Use the facets or Query Studio for those.
- In Logs, “Not applied while a trace is selected” means you are looking at one trace's lines. Clear the trace filter.
- Queries never read outside the current workspace.
Log search is slow for short words #
Searches shorter than 4 characters cannot use the message index, so they read the whole time range. Type a longer word or choose a shorter range.
Live tail is disabled or seems to miss lines #
Live tail needs a time range that ends now, so it is disabled for custom ranges in the past. It checks for new lines every 5 seconds and keeps the newest 1,000 on the page. On a very busy service, add a service or severity filter so that the lines you care about are not pushed out.
I can't save a query #
Only workspace admins can save queries. Viewers can build and run them. A workspace holds up to 200 saved queries.
The service map ignores my 7-day time range #
Service dependencies are worked out from traces, which is expensive, so those views read at most the last 6 hours even when a longer range is selected. Other pages use the full range, up to your plan's retention.
Alerts and incidents
Guides: create an alert rule, investigate and resolve an incident.
When does a rule fire? #
Rules are checked as events arrive, not on a timer. Today a rule fires when an incoming event matches the rule's signal, severity and service. The service match is “contains” and ignores case, and a field left at “Any” matches everything. Each firing opens an incident titled “<rule name> triggered”.
The threshold, log-pattern and noise-window fields are saved with the rule but are not yet used to decide whether it fires. Rules are evaluated on events that arrive through the HTTP ingest endpoints and log shippers. Because rules react to arriving events, a rule cannot fire on the absence of data.
A rule with every field left at “Any” fires on every event. Set at least a service and a severity.
An alert fired but no notification arrived #
- Look at the rule. Under Alert Rules, each rule shows either “Notifies: …” with its channels, or “No notification channel: alerts appear under Recent alerts only”. A rule with no channel raises alerts and incidents but tells nobody.
- Change a rule's channels with Edit channels. A rule's channels are picked when it is created, under “Notify”, and can be changed at any time: choose Edit channels on the rule under Alert Rules, tick or untick channels, and choose Save channels. Rules created before channels could be chosen have none until you do this. Editing channels does not pause or resume the rule.
- Check the channel. A channel marked “(disabled)” is skipped. Webhook and Slack destinations must be a full
https://URL to a public host: plainhttp://, private or internal addresses,localhostand URLs carrying a username or password are refused when the channel is saved. A channel saved before those checks existed that would be refused today shows needs attention with the reason; nothing is sent to it until the destination is replaced: choose Edit on the channel and enter the new destination. Saved destinations are masked, so if in doubt add the channel again with the complete value. - Check the receiver. Each notification is attempted up to three times, with an 8 second timeout per attempt; a receiver that answers with a 4xx status (other than 408 or 429) is not retried, because the request itself was rejected. The channel shows its last delivery and the error. For email, check spam for the subject “[Onyx Insights] Triggered: …”.
The alert itself is always recorded under Recent alerts and as an incident on Incidents, whether or not a notification went out. If a rule lists a channel, the incident exists, and nothing arrives on any channel type, contact support with the rule name, the channel name and type, and the time of the incident.
Adding or changing a notification channel #
Under Alert Rules, Grouping & channels, enter a channel name, choose Webhook, Email, Slack or PagerDuty, and put the webhook URL, email address or routing key in Send to. Add channel does nothing if either the name or Send to is empty. Then choose the channel in step 5 of Create alert rule. A channel notifies nobody until a rule uses it.
Webhook URLs and routing keys are credentials, so after saving they are shown as the host and the last 4 characters only. “Enter the full webhook URL, routing key or email address” means a masked value was submitted as if it were new. Type the complete value. Email addresses are shown in full.
Too many alerts #
Make the rule narrower first: a specific service, a specific severity. Then, under Noise reduction, add a rule to suppress, deduplicate or throttle repeated alerts for a service.
Incident statuses and severities #
Statuses, in order: open, acknowledged, investigating, monitoring, resolved. Severities run from SEV1, the most severe, to SEV4. New incidents you declare default to SEV3 with you as commander. Once an incident is resolved, a Postmortem box appears for what happened, the root cause and follow-ups. Only admins can declare or update incidents. Viewers see them read-only. A workspace keeps its most recent 1,000 incidents.
Plans, usage and billing
See your plan, seats and today's usage on Usage & Billing. Current prices are shown there and on the pricing page.
Plan limits #
| Plan | Seats | Daily ingest limit | Telemetry kept | Support |
|---|---|---|---|---|
| Trial (14 days, no card needed) | 5 | 5,000 logs/day soft limit; data is still accepted up to a 50,000 logs/day hard stop | 14 days | Best effort |
| Standard | 25 | 500,000 records | 30 days | Standard targets |
| Enterprise | Unlimited | 1,000,000 records and up | 90 days | Enterprise targets, 24×7 for S1 and S2 |
During the trial, data is kept for 14 days. The trial includes 5,000 logs/day as a soft limit; data is still accepted up to a 50,000 logs/day hard stop.
Payments monitoring is included in every plan. If Payments shows a paused notice, your subscription is not active: renew it from Plan and usage and Payments comes straight back.
“Your trial has ended” or “Subscription required” #
The 14-day free trial is over, or the subscription has lapsed. An admin chooses Upgrade Plan on the overlay, or opens Usage & Billing and chooses Upgrade. Upgrading restores access. Admins get a reminder email 7 days and 1 day before a trial ends.
While a subscription is expired, the HTTP ingest endpoints answer 402 with “Subscription expired. Upgrade to continue ingesting data.”
“Daily ingest limit exceeded” #
The count resets at 00:00 UTC. Admins get an email when a workspace reaches 80% of the day's limit. There is a 10% allowance above the limit, and once usage passes 110% the HTTP ingest endpoints answer 429 until the reset. Either reduce what you send, for example with a Drop lines processing rule for debug logs, or upgrade.
All seats are taken #
Members and pending invites both count. On Team, revoke invites that will not be used and remove people who have left, or upgrade to a plan with more seats.
“Online checkout isn't turned on for this workspace yet.” #
Your plan is managed by the Onyx Insights account team, not by card payment in the app. Contact your account manager or support to change plan or add a payment method. “Couldn't open checkout” followed by a note about confirming your email means exactly that. See email confirmation.
Data handling and security
Short answers to the questions security reviews ask. For contractual terms, ask your account manager.
How is my data kept apart from other customers'? #
Every stored record carries the identity of the organization it belongs to, and every read is filtered by it on the server. The filter is added by the platform from your signed-in session or token. A query cannot name, change or leave it out, and there is no interface that runs free-form SQL. A token is bound to one workspace and is refused everywhere else.
How are passwords, tokens and credentials stored? #
- Passwords are stored only as salted, iterated hashes. Nobody can read a password back.
- API tokens are stored only as salted hashes. That is why a token is shown once.
- Connector credentials, alert webhook URLs and routing keys are write-only. The app shows a mask and at most the last 4 characters.
- Invite, reset and confirmation links are single use, time limited and stored only as hashes.
- Authenticator secrets are encrypted at rest. Recovery codes are stored as hashes.
How long is telemetry kept? #
Traces, logs and metrics are kept for 14 days on Trial, 30 days on Standard and 90 days on Enterprise, each record is kept for that many days from its own timestamp. After that the record is deleted. Usage & Billing shows the figure for your workspace as “Telemetry kept for”, and the time range picker offers ranges up to it. A 14-day trial keeps 14 days of data.
- Upgrading applies the longer period to telemetry received from then on. Records that arrived before the upgrade keep the period they arrived with. If you need your existing history extended as well, ask support and we will re-stamp it.
- Downgrading shortens the ranges the app offers straight away. Records already stored are deleted on the schedule they arrived with.
- After a trial or subscription ends, anything still being sent is kept for 14 days.
- Deletion runs in the background, so a record can stay a few hours past its period. It is not a way to keep data longer.
If Usage & Billing shows a shorter figure than your plan's, that is the figure the platform is applying to your workspace at the moment, and the time range picker follows it. Contact support and we will tell you why and when it changes.
If your contract states a different retention period, ask your account manager how it applies to your workspace.
Where is my data hosted? #
Organizations in banking and government are pinned to a dedicated region, and a request that reaches the wrong site is refused with “Workspace … is pinned to … and cannot run on …”. If you see that message, contact support. The industry chosen at sign-up decides this, so tell us if yours was set incorrectly. For the hosting location of your own workspace, ask support or your account manager.
Who changed what? #
Admins can open Governance, then Audit trail, for the 30 most recent changes to tokens, members, invites and sign-in settings in the organization. Each entry names the person or the API token that made the change. It never contains a secret value. If you need older entries for an investigation, contact support with the date range.
Exporting data, closing an account, deleting data #
There is no bulk export or self-service account closure in the app today. You can copy results from Query Studio and chart data tables, and download recovery codes. To close an organization, or to request deletion or a copy of your data, an admin should write to support from the address on their account. We confirm the request with your admins before acting on it.
Error messages
Search this page for the text you see. Each row links to the full answer.
| Message | Where | Meaning |
|---|---|---|
| That email and password don't match | Sign in | Wrong email or password. Fix |
| Too many sign-in attempts / Too many login attempts. Try again later. | Sign in (429) | 5 failures in 15 minutes. Wait 15 minutes. Fix |
| Reset link is invalid or has expired | Password reset | Older than 1 hour, already used, or replaced. Fix |
| This account signs in with SSO | Sign in, password reset | The account has no password. Use the company SSO button. Fix |
| Your workspace requires you to sign in with your company SSO | Sign in (403) | Personal sign-in is refused once SSO is on. Fix |
| That code didn't work. Check it and try again. | Two-step verification | Wrong, expired or reused code. Fix |
| Too many incorrect codes. Try again in N minutes. | Two-step verification (429) | 5 wrong codes. Locked for 15 minutes. Fix |
| Your sign-in expired. Sign in again. | Two-step verification | More than 10 minutes on the code step. Fix |
| Setup timed out. Start again to get a new QR code. | Security | QR code older than 15 minutes. Fix |
| Authenticator apps can't be set up right now / Authenticator codes can't be checked right now | Security, sign in (503) | Our side. Use email or recovery codes and tell support. Fix |
| Your workspace requires two-step verification, so you can't remove your only method. | Security (409) | Add another method first. Fix |
| Turn on two-step verification for your own account before requiring it for everyone. | Governance (409) | Fix |
| Confirm your email address before you … | Tokens, invites, billing, SSO (403) | Your address is unconfirmed. Fix |
| This confirmation link has expired / isn't valid or was already used | Email confirmation | Use Resend email. Fix |
| A confirmation email was sent moments ago / Too many confirmation emails were requested | Email confirmation (429) | One a minute, five an hour. Fix |
| This invite link has expired / has already been used or was cancelled / isn't valid | Joining a team | Fix |
| Use the email address this invite was sent to. | Joining a team | Fix |
| Shareable invite links are no longer supported | Team (410) | Invite each person by email. Fix |
| Someone with this email already has an account. / Email already registered | Team, sign up (409) | One organization per email. Fix |
| All N seats on your plan are taken or invited. / Seat limit reached | Team | Fix |
| Cannot remove own account | Team | Ask another admin. Fix |
| Admin access required | Anywhere (403) | You are a Viewer. Fix |
| Authentication required | Anywhere (401) | Your session ended, or the workspace is not one you belong to. Sign in again and check the workspace. More |
| Workspace not found | Anywhere (404) | The workspace ID in the request is wrong. Pick the workspace from the account menu, or correct ?workspace=. |
| The email domain … is already claimed by another workspace | Single sign-on (409) | Fix |
| This email domain is not allowed to sign in to this workspace / This email already belongs to another workspace | Single sign-on | Fix |
| Unauthorized / Invalid OTLP ingestion credential | Sending telemetry (401) | Always the token. Fix |
| Malformed OTLP payload / Malformed or oversized request body / Unsupported Content-Encoding / Temporarily unable to accept telemetry | Sending telemetry | Fix |
| Request body too large | HTTP ingest and API (413) | Over 1 MB. Send smaller batches. More |
| No ingest events found in payload / Unsupported ingest kind | HTTP ingest (400) | The body is not in the expected shape. Fix |
| This API token belongs to a different workspace / doesn't have the '…' scope | API (403) | Fix |
| This action requires a signed-in workspace admin; API tokens can't perform it | API (403) | Fix |
| Workspace keys were replaced by API tokens. | API (410) | Fix |
| Datadog validation failed / Dynatrace pull failed / Splunk health pull failed / Connector pull failed | Connectors (502) | The provider refused the request. Fix |
| Connector endpoint cannot target … / resolves to a private or restricted network | Connectors (400) | Endpoint must be public. Fix |
| Enter the full webhook URL, routing key or email address | Alert channels (400) | A masked value was submitted. Fix |
| The query exceeded the 10 second limit / The query took too long | Query Studio, Logs (504) | Fix |
| The query needed more memory or rows than the data plane allows | Query Studio (422) | Fix |
| The telemetry data plane is not reachable right now / Telemetry data plane not configured | Any telemetry page (503) | Fix |
| Trace not found | Traces | Older than your plan keeps telemetry, or still arriving. More |
| Subscription required / Your 14-day free trial has ended / Subscription expired | Anywhere (402) | Fix |
| Daily ingest limit exceeded for … plan | HTTP ingest (429) | Fix |
| Online checkout isn't turned on for this workspace yet. | Usage & Billing | Fix |
| Workspace … is pinned to … and cannot run on … | Anywhere (403) | Region pinning. Contact support. More |
Limits
The numbers behind the answers above, in one place.
| Area | Limit | Value |
|---|---|---|
| Sign in | Password length | At least 8 characters |
| Sign in | Failed attempts before lockout | 5 in 15 minutes, then locked 15 minutes |
| Sign in | Session length | 12 hours from sign-in |
| Sign in | Password reset link | 1 hour, single use |
| Confirmation link | 24 hours, single use. Resend: 1 a minute, 5 an hour | |
| Two-step | Wrong codes before lockout | 5, then locked 15 minutes |
| Two-step | Email code | 10 minutes, 5 attempts. Send: 1 a minute, 5 an hour |
| Two-step | Recovery codes | 10, each single use |
| Two-step | Time to finish the code step / authenticator setup | 10 minutes / 15 minutes |
| Team | Invite link | 7 days, single use, one email address |
| Tokens | Active tokens per workspace | 100 |
| Tokens | Name length / expiry | 80 characters / never, or 1 to 3,650 days |
| Tokens | Revocation takes effect for telemetry | Within about 10 seconds |
| OTLP ingest | Request or gRPC message size | 10 MB |
| OTLP ingest | Encodings | Protobuf or JSON, gzip or uncompressed |
| HTTP ingest | Request size / events per request | 1 MB / 500 |
| HTTP ingest | Message length / tags / attribute keys per event | 10,000 characters / 100 / 50 |
| Telemetry | Telemetry kept, and the longest time range: Trial / Standard / Enterprise | 14 / 30 / 90 days |
| Topology | Window used for service dependencies | 6 hours |
| Query Studio | Rows / time limit | 1 to 1,000 (default 100) / 10 seconds |
| Query Studio | Filters / group-by / aggregations | 20 / 4 / 8 |
| Query Studio | Saved queries per workspace | 200 |
| Logs | Page size / live tail buffer / tail interval | 100 lines / 1,000 lines / 5 seconds |
| Logs | Shortest indexed search term | 4 characters |
| Traces | Attribute filters / page size | 5 / 50 |
| Alerts | Notification attempts / timeout | 1 / 8 seconds |
| Incidents | Kept per workspace | Most recent 1,000 |
| Audit trail | Entries shown in Governance | Most recent 30 |
| Plans | Daily ingest: Trial / Standard / Enterprise | Trial: 5,000 logs/day soft limit, still accepted until a 50,000/day hard stop. Standard / Enterprise: 500,000 / 1,000,000, blocked above 110%. Resets 00:00 UTC. |
| Plans | Seats: Trial / Standard / Enterprise | 5 / 25 / unlimited |
Emails we send
Use these subjects to find a message, to build a mail filter, or to check whether a message is genuine. Every link in our emails points at the Onyx Insights address you sign in on.
| Subject | Sent when |
|---|---|
| Welcome to Onyx Insights — your trial is ready | You create an account. |
| Welcome to Onyx Insights | You accept an invite. |
| Confirm your email address for Onyx Insights | You sign up, or choose Resend email. |
| You're invited to <organization> on Onyx Insights | An admin invites you. |
| Reset your Onyx Insights password | Someone requests a reset for your address. Ignore it if that was not you. Your password stays the same. |
| Your Onyx Insights sign-in code / Your code to turn on email verification for Onyx Insights | Two-step verification by email. The code is never in the subject. |
| Your Onyx Insights trial expires in N days / expires tomorrow / has ended | To admins, 7 days and 1 day before a trial ends, and when it ends. |
| Onyx Insights: <workspace> is at N% of daily ingest | To admins, at 80% of the daily limit. |
| [Onyx Insights] Alert: <title> | An alert rule with an email channel fires. |
We never ask for your password, a verification code or a token by email, and a sign-in code email never contains a link you must click. If a message looks wrong, do not follow its links. Open Onyx Insights from your bookmark and forward the message to support.