Commit Graph

125 Commits

Author SHA1 Message Date
Subhra264 8f1d5f7010
feat: introduce SMTP env configurations (#2810)
Addresses #2601.

`lettre` crate requires Rust `1.70+`. `ZO_SMTP_ENCRYPTION` env variable
offers two important encryption method - `starttls` and `ssltls`.
2024-02-28 17:15:48 +05:30
Hengfei Yang 24919333d6
perf: improve traces ingestion (#2708) 2024-02-16 23:23:02 +08:00
Hengfei Yang 78832e29cc
fix: remove xxhash (#2680) 2024-02-10 20:05:06 +08:00
Ashish Kolhe 022e56b268
fix: 0.8.1-rc1 build issue (#2679) 2024-02-09 14:36:28 +05:30
Hengfei Yang 29b64f0dfa
fix: need delete merged files from ingester cache db (#2677) 2024-02-09 14:40:00 +08:00
Hengfei Yang 644a475256
feat: compactor supports lock on stream level (#2664) 2024-02-09 09:26:18 +08:00
Hengfei Yang f09529e746
chore: update dependencies (#2644) 2024-02-03 00:14:08 +08:00
Hengfei Yang 79682120f0
feat: search queue management (#2621) 2024-02-01 11:54:01 +08:00
Hengfei Yang 37bd716760
feat: update to datafusion 35 (#2586)
- [x] upgrade to datafusion 35
- [x] fixed #2582
2024-01-26 20:22:46 +08:00
Hengfei Yang cc78486589
feat: improve id generate (#2523) 2024-01-20 19:34:58 +08:00
Ashish Kolhe 7db25f01d6
feat: rebac with open fga (#2445) 2024-01-11 14:56:37 +05:30
Hengfei Yang f4c3423129
perf: improve ingester with memory (#2382) 2024-01-07 23:52:43 +08:00
Hengfei Yang e0a1ef7a26
fix: keeping optimize search (#2321) 2024-01-03 09:45:47 +08:00
Hengfei Yang a4bae1a584
feat: Implement memtable + wal (#2261) 2023-12-28 07:40:22 +08:00
Ashish Kolhe 122d5d52c4
feat: dex integration (#2277) 2023-12-22 09:05:46 +05:30
Ankur Srivastava 4ac1dcb53c
feat: support structured logging (#2230)
The idea behind this PR is to generate logs in a structured-json
format, such that we can use automated tooling to parse and debug
O2 logs as well.

If logs are to be written and analysed in files, one can enable:
`ZO_LOG_FILE_DIR=/tmp/openobserve`
The output file will be of format -
`/tmp/openobserve/o2.log.2023-12-18-10`
and it will be rotated daily.

And add a new environment `ZO_LOG_JSON_FORMAT=false`, set to `true` to
enable json format.

---------

Co-authored-by: Ankur Srivastava <ankur@grover.com>
Co-authored-by: hengfeiyang <hengfei.yang@gmail.com>
2023-12-18 17:49:48 +01:00
Hengfei Yang 27c8d2420f
chore: update datafusion to 34 (#2222) 2023-12-18 10:49:08 +08:00
Hengfei Yang 60a0511d2b
feat: add aggregation support for alert (#2148)
impl #2142 backend
2023-12-08 12:58:24 +08:00
Hengfei Yang 63d2f1522c
feat: add more variables for alerts (#1973) 2023-12-01 23:27:43 +08:00
胡同里有猫 7f6b86a68a
feat: add memory_circuit_breaker (#2094) 2023-12-01 15:15:50 +08:00
Ashish Kolhe 08d434c719
feat: added geoip for data enrichment (#2078) 2023-11-30 16:17:22 +05:30
Ashish Kolhe 3e647cf9ca
fix: vector enrichment commit id (#2081) 2023-11-28 21:18:39 +05:30
Ashish Kolhe 7cf22baaf2
chore: upgrade vrl version (#2066) 2023-11-28 14:20:12 +08:00
Prabhat Sharma 5db4ca191a change license to AGPL 2023-11-26 18:34:59 -08:00
Hengfei Yang b3587fa904
fix: single_distinct_aggregation_to_group_by (#2029) 2023-11-25 10:28:07 +08:00
Hengfei Yang 681f6e3af9
feat: support mysql for metadata (#1968) 2023-11-20 07:42:12 +08:00
Hengfei Yang f4a0a75921
feat: implement bloom filter (#1625) 2023-11-17 12:21:33 +08:00
Hengfei Yang 8b6d9325b5
feat: add grpc for router (#1946) 2023-11-16 09:29:42 +08:00
Hengfei Yang b0903ae064
fix: wal locking (#1926) 2023-11-10 22:56:11 +08:00
Hengfei Yang 8e21f62487
feat: improve files deletion (#1711) 2023-10-23 19:32:10 -05:00
Ankur Srivastava 5b01947491
feat: rum/maxmind integration (#1520)
This PR implements the first draft for the Real User Monitoring.

The endpoints at the moment are:

- `/rum/v1/{org_id}/rum`
- `/rum/v1/{org_id}/replay`
- `/rum/v1/{org_id}/logs`

For now the authentication is done using `oo-api-key` which is
being passed in the query-param using `browser-sdk`.

As of now, the data is being collected in the following three streams:

- `_rumdata` for rum data
- `_rumlog` for log data
- `_sessionreplay` for session-replay data

The data is being ingested using the multi-json implementation, with a
small change where some extra data is also ingested in the json from
the headers, query-params etc. using a middleware extractor and stores
the data in `HashMap<String, String>` and gets ingested in this
multi-json.

A file containing regexes for common user-agents is also committed which
is read during the initialization time which is used to parse incoming
user-agents and browser, os etc are inserted into the incoming row of
data.

Added the endpoints for `get`, `put`, `post` for rum-tokens.

- `/api/{org_id}/organizations/rumtoken`

#### maxmind integration 
Integrated the maxmind-db data in the source. Currently the data
is injected via the middleware and the file gets uploaded every
24 hours.
The file pointer gets mutated and updated when there is a change
in the mmdb file. To efficiently do this, we also query the sha256
of our file and compare it using the .sha256 file available on the
public bucket.
2023-10-18 15:09:24 +02:00
Hengfei Yang bb1bd0049b
feat: optimize file list (#1577)
## Implement

- [x] Implement file_list API for gRPC
- [x] Debuging deadlock issue

## Todo

- [ ] Querier should use the file_list API for search

---------

Co-authored-by: oasisk <ashish.j.kolhe@gmail.com>
2023-09-29 15:01:10 +05:30
Hengfei Yang c6a46ac315
feat: upgrade datafusion to 31 (#1506) 2023-09-19 17:43:17 +08:00
Hengfei Yang 267a14fa6b
fix: migration for local mode with s3 (#1526) 2023-09-18 13:54:37 +08:00
Hengfei Yang 9adb340e5f
feat: add auto upgrade (#1524)
Auto upgrade from v0.5.2 to v0.6.0. Moves from sled to sqlite for local mode without user intervention. There should be no noticeable changes to end users.
2023-09-17 09:26:43 -07:00
Ashish Kolhe d11daf9b46
fix: use vrl crate (#1495)
Openobserve uses vrl & vector from vector fork. Vrl is available as
crate , we can use the crate as dependancy rather than using it from our
fork .

This also fixes https://github.com/openobserve/openobserve/issues/1233
2023-09-13 12:44:54 +05:30
Ashish Kolhe 56655cdbef
feat: otlp http for logs & metrics (#1482) 2023-09-11 15:25:31 +05:30
Hengfei Yang 7d9f0d7e92
feat: add disk cache (#1472) 2023-09-08 18:40:31 +08:00
Hengfei Yang 5a3173c689
feat: implement sqlite for metadata (#1449) 2023-09-04 11:00:28 +08:00
Hengfei Yang c6ab994dd4
feat: upgrade to datafusion 30 (#1439) 2023-08-30 14:31:14 +08:00
Hengfei Yang c9bfc5bbb0
feat: implement stream stats with file list (#1433) 2023-08-29 19:00:05 +08:00
Hengfei Yang 8b74b952f7
feat: new file list (#1376) 2023-08-25 09:49:30 +08:00
Ashish Kolhe 6312be63f9
feat: grpc logs & metrics support (#1399)
Co-authored-by: hengfeiyang <hengfei.yang@gmail.com>
2023-08-23 14:00:17 +05:30
Hengfei Yang b3189f246c
perf: optimize parquet write params (#1323)
- [x] optimize parquet write params
- [x] add schedule fetch latest file_list to local cache
- [x] optimize CI for release mode
- [x] deadlock by usage report
2023-08-04 11:28:33 +05:30
Hengfei Yang d76aeed8f5
perf: optimize compactor (#1312) 2023-08-02 22:29:26 +08:00
Ankur Srivastava 70f705e07b
fix: incorrect labels in aggregations (#1306) 2023-08-02 18:47:09 +08:00
Hengfei Yang 110db54772
fix: improve compactor for file_list (#1260) 2023-07-26 19:23:04 +08:00
Hengfei Yang 97d1e44440
feat: support multiple etcd hosts (#1243) 2023-07-24 10:07:57 +08:00
Hengfei Yang 339787b015
feat: add prometheus format query API (#1240) 2023-07-23 22:43:51 +08:00
Ashish Kolhe ffacf619c6
feat: use dynamo db (#1220)
Co-authored-by: hengfeiyang <hengfei.yang@gmail.com>
2023-07-21 22:22:35 +05:30