169 Commits

Author SHA1 Message Date
Vikrant Gupta
d00024b64a
feat: preference framework qs changes (#5527)
* feat: query service changes base setup for preferences

* feat: added handlers for user and org preferences

* chore: added base for all user and all org preferences

* feat: added handlers for all user and all org preferences

* feat: register the preference routes and initDB in pkg/query-service

* feat: code refactor

* chore: too much fun code refactor

* chore: little little missing attributes

* fix: handle range queries better

* fix: handle range queries better

* chore: address review comments

* chore: use struct inheritance for the all preferences struct

* chore: address review comments

* chore: address review comments

* chore: correct preference routes

* chore: low hanging optimisations

* chore: address review comments

* chore: address review comments

* chore: added extra validations for the check in allowed values

* fix: better handling for the jwt claims

* fix: better handling for the jwt claims

* chore: move the error to preference apis

* chore: move the error to preference apis

* fix: move the 401 logic to the auth middleware
2024-07-29 09:51:18 +05:30
Vibhu Pandey
eefccafa5b
feat(gateway): remove feature flag (#5561) 2024-07-26 12:31:33 +05:30
Srikanth Chekuri
8ccdc71eaf
chore: remove deprecated option (#5239) 2024-06-25 10:10:33 +05:30
Srikanth Chekuri
f1b5da9916
chore: fix elapsed time formatting (#5238) 2024-06-17 09:00:55 +05:30
Srikanth Chekuri
2f949d2738
chore: address large number of staticcheck issues (#5176)
* chore: address large number of staticcheck issues

* chore: fix tests

* chore: fix more issue

* chore: fix options
2024-06-11 20:10:38 +05:30
Vibhu Pandey
7f39d8282c
(feature) multiple ingestion keys (#4762)
* feat(keys): add support for multiple ingestion keys

* ci(git): remove vendor/ from git

* feat(gateway): create a proxy for sending requests to the gateway

* fix(sqlite): remove keys schema

* fix(api): replace with constant

* fix(server): remove redundant options

* fix(server): remove redundant options

* test(gateway): add unit tests for gateway proxy

* ci(docker): update gateway url

* refactor(gateway): move gateway to api layer

* fix(manager): fix declared error in manager

* feat(testing): add a new testing docker-compose

* fix(license): revert to nil license since select will never return a norows error

* feat(gateway): add feature flags

* chore(server): add a logger

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
2024-06-04 18:25:24 +05:30
Vishal Sharma
96162d7949
fix: handle-large-traces (#4903)
* fix: handle-large-traces

* feat: add isSubTree key to identify subTrees
Show user a loom video explaining how to navigate large spans

* chore: update icon to warning

* chore: fire telemetry events for all trace detail API calls, large traces

* chore: update MAX_SPANS_IN_TRACE to 250k
2024-05-27 17:20:45 +05:30
Srikanth Chekuri
0cf8817f3f
chore: use querier in alerts (#5045) 2024-05-24 12:11:34 +05:30
Srikanth Chekuri
a9464de62d
chore: use last 1day data for apdex latency metric meta (#4846) 2024-04-15 13:37:08 +05:30
Vishal Sharma
9b1d596816
chore: update events (#4808)
* chore: update events

* Update ee/query-service/app/server.go

Co-authored-by: Prashant Shahi <prashant@signoz.io>

---------

Co-authored-by: Prashant Shahi <prashant@signoz.io>
2024-04-04 11:31:27 +05:30
Vishal Sharma
da4a6266c5
feat: add events API (#4761) 2024-03-28 21:43:41 +05:30
Srikanth Chekuri
ae594061e9
chore: fix query-service logging (#4696) 2024-03-27 00:07:29 +05:30
Vishal Sharma
63f0ae1c7c
chore: update events (#4725)
* chore: update events

* chore: disable TELEMETRY_EVENT_QUERY_RANGE_API for saas

* chore: don't use mustCompile as it can cause panics
2024-03-20 19:59:28 +05:30
Srikanth Chekuri
a42176599f
chore: add day wise usage breakdown (#4648) 2024-03-12 22:45:31 +05:30
Srikanth Chekuri
adef0a4138
chore: add LogCommentEnricher middleware (#4681) 2024-03-12 18:39:28 +05:30
Vishal Sharma
4b4008642d
chore: extract dashboard/alert query info and send event (#4665)
* chore: extract dashboard/alert query info and send event

* chore: add totalDashboardsWithPanelAndName attribute in event
2024-03-11 16:45:06 +05:30
Raj Kamal Singh
9ace374855
Feat: QS: Log Pipelines for installed integrations (#4674)
* chore: refactor: inject sqlx.DB into opamp.initDB instead of DB file name

* chore: reorganize test utils a little

* chore: add test validating pipelines for installed integrations show up in pipelines list

* chore: get basic integration pipelines testcase passing

* chore: reconcile experimental changes with latest state of develop

* chore: add integration test for reordering of pipelines

* chore: marker for integration pipelines using Id

* chore: hookup propagation of installed integration pipelines by opamp

* chore: add util for mapping slices

* chore: add support for reordering integration pipelines

* chore: exclude user saved integration pipelines if no longer installed

* chore: flesh out rest of intgeration pipelines scenarios

* chore: handle scenario when an integration is installed before any pipelines exist

* chore: notify agentConf of update after uninstalling an integration

* chore: some minor cleanup

* chore: some more cleanup

* chore: update ee server for changed controllers

* chore: some more cleanup

* chore: change builtin integration id prefix to avoid using colons that break yaml

* chore: update builtin integration id in test
2024-03-11 14:15:11 +05:30
Raj Kamal Singh
0870030d1c
Feat: qs integrations http api (#4622)
* chore: add http api test for signoz integrations

* chore: add controller for integrations

* chore: add http API handlers for integrations API

* chore: hook up integrations API in new servers

* chore: add remaining fields in Integration DTO

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
2024-03-02 10:11:51 +05:30
Vishal Sharma
fe0ba5e3ba
fix: create PAT not null error (#4613)
* fix: create PAT not null error
allow all admins to view all pats

* fix: allow revoking of token by all admin users
2024-02-28 17:37:30 +05:30
Vishal Sharma
d11c1eb439
feat: api management (#4557)
* feat: api management

* chore: address review comments and typos

* chore: add sort and created by user object on create

* chore: replace expiresAt with expiresInDays for request body
2024-02-16 12:46:33 +05:30
Srikanth Chekuri
4db3e5e542
chore: include status (#4447) 2024-01-29 00:42:19 +05:30
Nityananda Gohain
f3fdd2dd6c
chore: add tenantId and orgName in usage (#4399)
* feat: add tenantId and orgName in usage

* fix: update regex

* fix: if else logic updated
2024-01-20 01:24:09 +05:30
Srikanth Chekuri
abaf6126e5
chore: add /v4/query_range endpoint (#4361) 2024-01-16 16:56:20 +05:30
Vishal Sharma
c66c8c2823
chore: add new dashboard/alerts info events (#4214)
* chore: add new dashboard/alerts info events
2023-12-13 18:14:55 +05:30
Vishal Sharma
f56b5cb971
fix: createPAT method to return id (#4078)
Update token expiry validations
2023-12-13 17:05:59 +05:30
Vishal Sharma
5b419cb668
fix: improve user telemetry (#3972)
* fix: improve user telemetry
- move GetEmailFromJwt to common function
- update AttachJwtToContext() to use standard way of attaching value to context
- update userEmail in every possible sendEvent call
- send groupId in sendEvent call for SaaS operator analytics

* chore: added DEFAULT_CLOUD_EMAIL const

* chore: add AttachJwtToContext to analytics middleware

* test: added AttachJwtToContext to logs pipelines
2023-11-16 15:11:38 +05:30
Srikanth Chekuri
8371670512
chore: dashboard locking ee query-service (#3890) 2023-11-03 15:45:45 +05:30
Srikanth Chekuri
5e349d8294
chore: dashboard locking ee query-service (#3856)
* chore: dashboard locking ee query-service

* chore: remove print statements

* chore: remove unused imports

* chore: no one is allowed to edit/delete the locked dashboard

---------

Co-authored-by: Srikanth Chekuri <srikanth@Srikanths-MacBook-Pro.local>
2023-11-02 22:52:50 +05:30
Dhawal Sanghvi
ab42700245
query-service: add cluster name cli flag (#3713)
* chore: query-service  add cluster name cli flag

* chore: add schema migrator to docker compose file

* chore: add schema migrator to docker swarm compose file

* chore: 📌 pin versions: Schema Migrator 0.79.10 and update compose files

* chore: 🔧 update compose depends_on for schema-migrator service

---------

Co-authored-by: Prashant Shahi <prashant@signoz.io>
2023-10-20 12:37:45 +05:30
Swapnil Nakade
6b2427f1c2
(chore): replace ioutil with io and os for file operations (#3761)
Switched all file operations from ioutil package to io and os packages due to the deprecation of ioutil in Go 1.16. This change contributes to the maintainability of the codebase, ensuring it's up-to-date with the current standard library. Additionally, implemented usage of filepath.Join for platform-independent file paths.
2023-10-19 08:46:20 +00:00
Srikanth Chekuri
e3d08a4275
chore: send to customer portal for manage (#3763) 2023-10-19 14:00:34 +05:30
Vishal Sharma
f8d3fa0fdb
chore: update query service telemetry (#3735)
* chore: update query service telemetry

* chore: address review comments

* chore: add group call and update metrics condition

* chore: update company_domain
2023-10-17 11:49:50 +05:30
Yunus M
5b858f2963
Billing UI (#3711)
* feat: integrate billing api and wire up billing ui

* feat: show billing to admin only if on plans other than basic plan

* feat: show billing to admin only if on plans other than basic plan

* feat: update notfound snapshot

* chore: fix billing sidenav logic

* chore: fix several bugs

* chore: backend fix for billing

* fix: window.open pop blocker issue and error ui (#3750)

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Rajat Dabade <rajat@signoz.io>
2023-10-16 23:57:44 +05:30
Raj Kamal Singh
546d98ca9c
feat: agentConf.manager as opamp conf provider (#3747)
* chore: add integration test for log pipelines being recommended to agents on connection

* chore: agentConf.Manager as AgentConfigProvider

* feat: logparsingpipelines as an AgentFeature

* chore: some cleanup

* feat: update agentConf init in ee query-service

* chore: more cleanup and move opamp/logspipeline -> logparsingpipeline/collector_config.go

* chore: some more cleanup

* chore: set agent.RemoteConfig after broadcasting conf to all agents

* chore: add test scenario for post remote conf application
2023-10-15 21:04:19 +05:30
Raj Kamal Singh
cb155a1172
feat: opamp server with agent config provider (#3737)
* feat: add interface for opamp.AgentConfigProvider

* feat: add iface and plumbing for generating recommended conf in opamp/agent

* feat: get opamp server config provider tests started

* chore: add test scenario for agent connection without a config recommendation

* chore: add test scenario for agent connection with a config recommendation

* chore: add test for validating config deployment status gets reported

* chore: add test for rolling out latest config recommendations when config changes

* chore: wrap up opamp server lifecycle tests

* chore: some tests cleanup

* chore: get all tests passing

* chore: update opamp server init logic in ee query service

* chore: some cleanup

* chore: some final cleanup
2023-10-14 09:16:14 +05:30
Srikanth Chekuri
1a855582a7
chore: add billing api resources (#3704) 2023-10-11 18:14:08 +05:30
Srikanth Chekuri
416a058eab
Query range caching (#2142) 2023-09-17 10:40:45 +05:30
Vishal Sharma
7209ac0007
fix: login/precheck api in non-ee variant (#3516)
* fix: login/precheck api in non-ee variant

* fix: add return statement

* fix: make skip config empty

---------

Co-authored-by: Palash Gupta <palashgdev@gmail.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
2023-09-12 12:53:46 +05:30
Srikanth Chekuri
89e8fb715c
chore: bump SigNoz/prometheus (#3410) 2023-09-05 18:17:32 +05:30
Raj Kamal Singh
03acc33888
chore: log parsing pipelines happy path integration test (#3424)
* chore: get started with logparsingpipeline happy path integration test

* chore: log pipelines happy path: assert opampclient receives expected otel config processors for log pipelines.

* chore: logparsing pipeline happy path: validate deployment status update

* chore: logparsing pipeline happy path: validate posting pipelines update

* chore: some cleanup

* chore: some more cleanup

* chore: some more cleanup

* fix: address review comments

---------

Co-authored-by: Nityananda Gohain <nityanandagohain@gmail.com>
2023-09-02 20:01:03 +05:30
Ankit Nayan
591ea96285
feat: Just-in-time provisioning of SSO users (#3394)
* feat: auto provisioning of SSO users rather than needing invite link to login each user

* updating errors

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* fix: set IsUser: true when SSO feature is available

* fix: signoz login from IDP (#3396)

* fix: enable login from IDP with relayState set with domainName

* update comments on function

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

* chore: added error checks to fetch domain from SAML relay state

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
2023-08-23 16:22:24 +05:30
Srikanth Chekuri
abb8b2b122
fix: lowercase filter operator and increase default conn settings (#3310) 2023-08-10 17:20:34 +05:30
Nityananda Gohain
348fa0ba5e
feat: usage exporter logic updated (#3211)
* feat: usage exporter logic updated

* fix: upload usage before shutdown

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
2023-08-01 10:19:56 +05:30
Nityananda Gohain
1a3e46cecd
feat: integrate pipelines API (#2457)
* chore: integrate pipelines API

* fix: limit support integrated in pipelines

* fix: interface to string

* fix: json parser and allow deleting all pipelines

* fix: output modified if operators are disabled

* fix: validation updated for operators

* fix: expression check added

* fix: regex expression check added

* fix: remove operator validation updated

* fix: tests updated for pipeline builder

* fix: fix error messages in http handler

* fix: dont return payload if there is an error

* fix: extracting userId from context moved to auth package

* fix: api errors moved to http handler

* fix: get version logic updated

* fix: deployment result message updated

* fix: pipeline builder edgecase fixed and tests updated

* fix: get failing postablePipeline tests to pass

---------

Co-authored-by: Vishal Sharma <makeavish786@gmail.com>
Co-authored-by: Raj <rkssisodiya@gmail.com>
2023-07-31 21:34:42 +05:30
Srikanth Chekuri
433f930956
feat: add flag to switch to span metrics for service level latency metrics (#3134) 2023-07-14 11:31:44 +05:30
Srikanth Chekuri
216499051d
Add support for Delta temporality (#2505)
* Revert "upgraded some deprecated packages  (#2423)"

This reverts commit c4b052c51ec3a22e25923aa92fb66665e6ca589b.

* chore: delta working with QB

* chore: use enum

* Revert "Revert "upgraded some deprecated packages  (#2423)""

This reverts commit d88f3594a62582a16fa04528a56ff075f628bf4e.

* chore: add test

* chore: add delta for query range v3

* chore: explicit check for temporality

* chore: fix tests

* chore: conditionally fetch temporality when --prefer-delta is set
2023-07-13 18:50:19 +05:30
Srikanth Chekuri
20687d5184
feat: ability to configure noisy top level operations to discard (#2978) 2023-06-30 06:58:22 +05:30
Vishal Sharma
9e305cb672
feat: add zap otel logger support (#2790)
* feat: add zap otel logger support
2023-06-21 11:47:30 +05:30
Vishal Sharma
c32b8638a4
feat: introduce feature_usage table to manage features (#2661)
* feat: introduce feature_usage table to manage features
* feat: introduce limit on QB alerts and dashboards
2023-05-17 16:10:43 +05:30
Daniël
dcad77746a
feat: added configuration via env for context timeout (#2585) 2023-04-25 16:29:49 +05:30