Skip to content

Commit c285b1c

Browse files
authored
Update docs and prepare for release v0.1.0 (#248)
1 parent 1787010 commit c285b1c

17 files changed

+150
-133
lines changed

README.md

+78-64
Original file line numberDiff line numberDiff line change
@@ -1,84 +1,73 @@
1-
<p align="center">
2-
<span">
3-
<img src="https://raw.githubusercontent.com/parseablehq/.github/main/images/logo.svg#gh-light-mode-only" alt="Parseable" width="400" height="80" />
4-
<img src="https://raw.githubusercontent.com/parseablehq/.github/main/images/logo-dark.png#gh-dark-mode-only" alt="Parseable" width="400" height="80" />
5-
</a>
6-
</p>
1+
<h2 align="center">
2+
<picture>
3+
<source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/parseablehq/.github/main/images/logo-dark.png">
4+
<source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/parseablehq/.github/main/images/logo.svg">
5+
<img alt="Parseable Logo" src="https://raw.githubusercontent.com/parseablehq/.github/main/images/logo.svg">
6+
</picture>
7+
<br>
8+
Cloud native log observability
9+
</h2>
710

8-
<h4 align="center">
9-
<p> Cloud native log observability </p>
10-
<img src="https://raw.githubusercontent.com/parseablehq/.github/main/images/console.png" />
11-
<a href="https://www.parseable.io/docs/quick-start" target="_blank">Quick Start</a> |
12-
<a href="https://www.parseable.io/docs/introduction" target="_blank">Documentation</a> |
13-
<a href="https://launchpass.com/parseable" target="_blank">Community</a> |
14-
<a href="https://demo.parseable.io" target="_blank">Live Demo</a>
15-
</h4>
11+
<div align="center">
1612

17-
## :wave: Introduction
13+
[![Docker Pulls](https://img.shields.io/docker/pulls/parseable/parseable?logo=docker&label=Docker%20Pulls)](https://hub.docker.com/r/parseable/parseable)
14+
[![Twitter](https://img.shields.io/twitter/follow/parseableio?logo=twitter&style=flat&color=%234B78E6&logoColor=%234B78E6)](https://twitter.com/parseableio)
15+
[![Slack](https://img.shields.io/badge/slack-brightgreen.svg?logo=slack&label=Community)](https://launchpass.com/parseable)
16+
[![Docs](https://img.shields.io/badge/stable%20docs-parseable.io%2Fdocs-brightgreen?style=flat&color=%2373DC8C&label=Docs)](https://www.parseable.io/docs)
17+
[![Build](https://img.shields.io/github/actions/workflow/status/parseablehq/parseable/build.yaml?branch=main&label=Build)](https://github.com/parseablehq/parseable/actions)
1818

19-
Parseable is a open source log observability platform. Written in Rust, it is designed for simplicity of deployment and use. It is compatible with standard logging agents via their HTTP output. Parseable also offers a builtin GUI for log query and analysis.
19+
</div>
2020

21-
We're focussed on
21+
Parseable is a lightweight, cloud native log observability engine. It can use either a local drive or S3 (and compatible stores) for backend data storage.
2222

23-
* Simplicity - ease of deployment and use.
24-
* Efficiency - lesser CPU, Memory usage.
25-
* Extensibility - freedom to do more with event data.
26-
* Performance - lower latency, higher throughput.
23+
Parseable is written in Rust and uses Apache Arrow and Parquet as underlying data structures. Additionally, it uses a simple, index-free mechanism to organize and query data allowing low latency, and high throughput ingestion and query.
2724

28-
## :dart: Motivation
29-
30-
Given the analytical nature of log data, columnar formats like Parquet are the best way to store and analyze. Parquet offers compression and inherent analytical capabilities. However, indexing based text search engines are _still_ prevalent. We are building Parseable to take full advantage of advanced data formats like Apache Parquet and Arrow. This approach is simpler, efficient and much more scalable.
31-
32-
Parseable is developer friendly, cloud native, logging platforms today that is simple to deploy and run - while offering a rich set of features.
25+
Parseable consumes up to **_~80% lower memory_** and **_~50% lower CPU_** than Elastic for similar ingestion throughput.
3326

34-
## :question: How it works
27+
## :rocket: Features
3528

36-
Parseable exposes REST API to ingest and query log data. Under the hood, it uses Apache Arrow and Parquet to handle and compress high volume log data. All data is stored in S3 (or compatible systems). Parseable also has a bundled web console to visualize and query log data.
29+
- Choose your own storage backend - local drive or S3 (or compatible) object store.
30+
- Ingestion API compatible with HTTP + JSON output of log agents - [Fluentbit ↗︎](https://fluentbit.io/), [Vector ↗︎](http://vector.dev/), [Logstash ↗︎](https://www.elastic.co/logstash/) and others.
31+
- Query log data with PostgreSQL compatible SQL.
32+
- [Grafana ↗︎](https://github.com/parseablehq/parseable-datasource) for visualization.
33+
- Auto schema inference (schema evolution [coming soon ↗︎](https://github.com/parseablehq/parseable/issues/195)).
34+
- [Send alerts ↗︎](https://www.parseable.io/docs/api/alerts) to webhook targets including Slack.
35+
- [Stats API ↗︎](https://www.postman.com/parseable/workspace/parseable/request/22353706-b32abe55-f0c4-4ed2-9add-110d265888c3) to track ingestion and compressed data.
36+
- Single binary includes all components - ingestion, store and query. Built-in UI.
3737

38-
- Written in Rust. Low CPU & memory footprint, with low latency, high throughput.
39-
- Open data format (Parquet). Complete ownership of data. Wide range of possibilities for data analysis.
40-
- Single binary / container based deployment (including UI). Deploy in minutes if not seconds.
41-
- Indexing free design. Lower CPU and storage overhead. Similar levels of performance as indexing based systems.
42-
- Kubernetes and Cloud native design, build ground up for cloud native environments.
38+
## :white_check_mark: Getting Started
4339

44-
## :white_check_mark: Installing
45-
46-
Run the below command to deploy Parseable in demo mode with Docker.
40+
Run the below command to deploy Parseable in local storage mode with Docker.
4741

4842
```sh
49-
mkdir -p /tmp/data
50-
docker run \
51-
-p 8000:8000 \
52-
-v /tmp/data:/data \
43+
mkdir -p /tmp/parseable/data
44+
mkdir -p /tmp/parseable/staging
45+
46+
docker run -p 8000:8000 \
47+
-v /tmp/parseable/data:/parseable/data \
48+
-v /tmp/parseable/staging:/parseable/staging \
49+
-e P_FS_DIR=/parseable/data \
50+
-e P_STAGING_DIR=/parseable/staging \
5351
parseable/parseable:latest \
54-
parseable server --demo
52+
parseable local-store
5553
```
5654

57-
Once this runs successfully, you'll see dashboard at [http://localhost:8000](http://localhost:8000). You can login to the dashboard with `parseable`, `parseable` as the credentials. Please make sure not to post any important data while in demo mode.
58-
59-
Prefer other platforms? Check out installation options (Kubernetes, bare-metal), in the [documentation](https://www.parseable.io/docs/category/installation).
60-
61-
#### Live demo
55+
Once this runs successfully, you'll see dashboard at [http://localhost:8000](http://localhost:8000). You can login to the dashboard default credentials `admin`, `admin`.
6256

63-
Instead of installing locally, you can also try out Parseable on our [Demo instance](https://demo.parseable.io). Credentials to login to the dashboard are `parseable` / `parseable`.
64-
65-
## :100: Usage
66-
67-
If you've already deployed Parseable using the above Docker command, use below commands to create stream and post event(s) to the stream. Make sure to replace `<stream-name>` with the name of the stream you want to create and post events (e.g. `my-stream`).
68-
#### Create a stream
57+
### Create a stream
6958

7059
```sh
71-
curl --location --request PUT 'http://localhost:8000/api/v1/logstream/<stream-name>' \
72-
--header 'Authorization: Basic cGFyc2VhYmxlOnBhcnNlYWJsZQ=='
60+
curl --location --request PUT 'http://localhost:8000/api/v1/logstream/demo' \
61+
--header 'Authorization: Basic YWRtaW46YWRtaW4='
7362
```
7463

75-
#### Send events to the stream
64+
### Send events to the stream
7665

7766
```sh
78-
curl --location --request POST 'http://localhost:8000/api/v1/logstream/<stream-name>' \
67+
curl --location --request POST 'http://localhost:8000/api/v1/logstream/demo' \
7968
--header 'X-P-META-meta1: value1' \
8069
--header 'X-P-TAG-tag1: value1' \
81-
--header 'Authorization: Basic cGFyc2VhYmxlOnBhcnNlYWJsZQ==' \
70+
--header 'Authorization: Basic YWRtaW46YWRtaW4=' \
8271
--header 'Content-Type: application/json' \
8372
--data-raw '[
8473
{
@@ -93,19 +82,44 @@ curl --location --request POST 'http://localhost:8000/api/v1/logstream/<stream-n
9382
]'
9483
```
9584

96-
- For complete Parseable API documentation, refer to [Parseable API Docs](https://www.parseable.io/docs/category/api).
97-
- To configure Parseable with popular logging agents, please refer to the [agent documentation](https://www.parseable.io/docs/category/log-agents).
98-
- To integrate Parseable with your applications directly, please refer to the [integration documentation](https://www.parseable.io/docs/category/application-integration).
85+
### Query the stream
9986

100-
## :stethoscope: Support
87+
You can see the events in Parseable UI, or use the below curl command to see the query response on CLI.
10188

102-
For questions and feedback please feel free to reach out to us on [Slack](https://launchpass.com/parseable). For bugs, please create issue on [GitHub](https://github.com/parseablehq/parseable/issues).
89+
NOTE: Please change the `startTime` and `endTime` to the time range corresponding to the event you sent in the previous step.
90+
91+
```sh
92+
curl --location --request POST 'http://localhost:8000/api/v1/query' \
93+
--header 'Authorization: Basic YWRtaW46YWRtaW4=' \
94+
--header 'Content-Type: application/json' \
95+
--data-raw '{
96+
"query":"select * from demo",
97+
"startTime":"2023-01-09T00:00:00+00:00",
98+
"endTime":"2023-01-09T23:59:00+00:00"
99+
}'
100+
```
101+
102+
## :books: Documentation
103+
104+
- [Roadmap ↗︎](https://github.com/orgs/parseablehq/projects/4)
105+
- [Complete documentation ↗︎](https://www.parseable.io/docs/category/installation)
106+
- [FAQ ↗︎](https://www.parseable.io/docs/faq)
107+
108+
## :dart: Motivation
109+
110+
Traditionally, logging has been seen as a text search problem. Log volumes were not high, and data ingestion or storage were not really issues. This led us to today, where all the logging platforms are primarily text search engines.
111+
112+
But with log data growing exponentially, today's log data challenges involve whole lot more – Data ingestion, storage, and observation, all at scale. We are building Parseable to address these challenges.
113+
114+
## :stethoscope: Support
103115

104-
For commercial support and consultation, please reach out to us at [`hi@parseable.io`](mailto:hi@parseable.io).
116+
- For questions and feedback please feel free to reach out to us on [Slack ↗︎](https://launchpass.com/parseable).
117+
- For bugs, please create issue on [GitHub ↗︎](https://github.com/parseablehq/parseable/issues).
118+
- For commercial support and consultation, please reach out to us at [`hi@parseable.io` ↗︎](mailto:hi@parseable.io).
105119

106120
## :trophy: Contributing
107121

108-
Refer to the contributing guide [here](https://www.parseable.io/docs/contributing).
122+
Refer to the contributing guide [here ↗︎](https://www.parseable.io/docs/contributing).
109123

110124
#### Contributors
111125

deploy/linux-systemd/README.md

-47
This file was deleted.

helm-releases/collector-0.0.1.tgz

-4 Bytes
Binary file not shown.

helm-releases/parseable-0.1.0.tgz

2.08 KB
Binary file not shown.

helm/parseable/Chart.yaml helm/Chart.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@ apiVersion: v2
22
name: parseable
33
description: Helm chart for Parseable Server
44
type: application
5-
version: 0.0.8
6-
AppVersion: "v0.0.8"
5+
version: 0.1.0
6+
AppVersion: "v0.1.0"

helm/README.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Parseable Helm Chart
2+
3+
Refer the Parseable Helm Chart [documentation ↗︎](https://www.parseable.io/docs/deployment/kubernetes)
File renamed without changes.

helm/parseable/templates/deployment.yaml helm/templates/deployment.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,10 @@ spec:
3333
imagePullPolicy: {{ .Values.parseable.image.pullPolicy }}
3434
# Uncomment to debug
3535
# command: [ "/bin/sh", "-c", "sleep 1000000" ]
36-
{{- if .Values.parseable.demo }}
37-
args: ["parseable", "server", "--demo"]
36+
{{- if .Values.parseable.local }}
37+
args: ["parseable", "local-store"]
3838
{{- else }}
39-
args: ["parseable", "server"]
39+
args: ["parseable", "s3-store"]
4040
{{- end }}
4141
env:
4242
{{- range $key, $value := .Values.parseable.env }}
File renamed without changes.

helm/parseable/values.yaml helm/values.yaml

+6-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
parseable:
22
image:
33
repository: parseable/parseable
4-
tag: v0.0.8
4+
tag: v0.1.0
55
pullPolicy: Always
6-
demo: false
6+
local: false
77
secrets:
88
- type: env
99
name: parseable-env-secret
@@ -14,14 +14,15 @@ parseable:
1414
# - tls.key.path
1515
# - storage.upload.interval
1616
- addr
17+
- username
18+
- password
19+
- staging.dir
1720
- s3.url
1821
- s3.access.key
1922
- s3.secret.key
2023
- s3.bucket
2124
- s3.region
22-
- local.storage
23-
- username
24-
- password
25+
- fs.dir
2526
replicaCount: 1
2627
env:
2728
RUST_LOG: "parseable=info"

index.yaml

+19-9
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,28 @@ entries:
33
collector:
44
- apiVersion: v2
55
appVersion: 4769fbf
6-
created: "2022-12-13T14:27:14.386887+05:30"
6+
created: "2023-01-05T19:46:15.999688+05:30"
77
description: Helm chart for Parseable Collector
8-
digest: ab31cdecafecbafd4f6788cbfc1e83b76c7395654cd0efc87a5a874a8cb11cfc
8+
digest: 297c0b6ec05e8868c99639ad5d80e974af20a376af2f984e661d5dc98d9f03e1
99
name: collector
1010
type: application
1111
urls:
1212
- https://charts.parseable.io/helm-releases/collector-0.0.1.tgz
1313
version: 0.0.1
1414
parseable:
15+
- apiVersion: v2
16+
appVersion: v0.1.0
17+
created: "2023-01-05T19:46:16.007425+05:30"
18+
description: Helm chart for Parseable Server
19+
digest: 1ca2985befbc2500a7faeae8702238ad9afe05b00368f5c5b7cfbdea3d6f3a7b
20+
name: parseable
21+
type: application
22+
urls:
23+
- https://charts.parseable.io/helm-releases/parseable-0.1.0.tgz
24+
version: 0.1.0
1525
- apiVersion: v2
1626
appVersion: v0.0.8
17-
created: "2022-12-13T14:27:14.393538+05:30"
27+
created: "2023-01-05T19:46:16.006931+05:30"
1828
description: Helm chart for Parseable Server
1929
digest: c805254ffa634f96ecec448bcfff9973339aa9487dd8199b21b17b79a4de9345
2030
name: parseable
@@ -24,7 +34,7 @@ entries:
2434
version: 0.0.8
2535
- apiVersion: v2
2636
appVersion: v0.0.7
27-
created: "2022-12-13T14:27:14.392796+05:30"
37+
created: "2023-01-05T19:46:16.005811+05:30"
2838
description: Helm chart for Parseable Server
2939
digest: c591f617ed1fe820bb2c72a4c976a78126f1d1095d552daa07c4700f46c4708a
3040
name: parseable
@@ -34,7 +44,7 @@ entries:
3444
version: 0.0.7
3545
- apiVersion: v2
3646
appVersion: v0.0.6
37-
created: "2022-12-13T14:27:14.391679+05:30"
47+
created: "2023-01-05T19:46:16.004658+05:30"
3848
description: Helm chart for Parseable Server
3949
digest: f9ae56a6fcd6a59e7bee0436200ddbedeb74ade6073deb435b8fcbaf08dda795
4050
name: parseable
@@ -44,7 +54,7 @@ entries:
4454
version: 0.0.6
4555
- apiVersion: v2
4656
appVersion: v0.0.5
47-
created: "2022-12-13T14:27:14.390665+05:30"
57+
created: "2023-01-05T19:46:16.003581+05:30"
4858
description: Helm chart for Parseable Server
4959
digest: 4d6b08a064fba36e16feeb820b77e1e8e60fb6de48dbf7ec8410d03d10c26ad0
5060
name: parseable
@@ -54,7 +64,7 @@ entries:
5464
version: 0.0.5
5565
- apiVersion: v2
5666
appVersion: v0.0.2
57-
created: "2022-12-13T14:27:14.389309+05:30"
67+
created: "2023-01-05T19:46:16.002418+05:30"
5868
description: Helm chart for Parseable Server
5969
digest: 38a0a3e4c498afbbcc76ebfcb9cb598fa2ca843a53cc93b3cb4f135b85c10844
6070
name: parseable
@@ -64,12 +74,12 @@ entries:
6474
version: 0.0.2
6575
- apiVersion: v2
6676
appVersion: v0.0.1
67-
created: "2022-12-13T14:27:14.388158+05:30"
77+
created: "2023-01-05T19:46:16.001072+05:30"
6878
description: Helm chart for Parseable Server
6979
digest: 1f1142db092b9620ee38bb2294ccbb1c17f807b33bf56da43816af7fe89f301e
7080
name: parseable
7181
type: application
7282
urls:
7383
- https://charts.parseable.io/helm-releases/parseable-0.0.1.tgz
7484
version: 0.0.1
75-
generated: "2022-12-13T14:27:14.385392+05:30"
85+
generated: "2023-01-05T19:46:15.998828+05:30"

server/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "parseable"
3-
version = "0.0.8"
3+
version = "0.1.0"
44
authors = ["Parseable Team <hi@parseable.io>"]
55
edition = "2021"
66
categories = ["olap", "logging", "analytics-store"]

server/src/banner.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ pub mod about {
129129
eprintln!(
130130
"
131131
Commit: \"{}\"
132-
Docs: \"https://www.parseable.io/docs/introduction\"",
132+
Docs: \"https://www.parseable.io/docs\"",
133133
commit_hash
134134
);
135135
}

systemd/README.md

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Linux Systemd Service
2+
3+
Refer the Systemd setup [documentation ↗︎](https://www.parseable.io/docs/installation/systemd)

0 commit comments

Comments
 (0)