Skip to content

Commit

Permalink
better FAQ and "what is Baselime"
Browse files Browse the repository at this point in the history
  • Loading branch information
boristane committed Sep 14, 2023
1 parent 621996d commit c25ccbc
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 22 deletions.
28 changes: 17 additions & 11 deletions faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,27 +17,21 @@ Check out our [pricing page](https://baselime.io/pricing) for more details.

---

## How does Baselime count traces for billing?
## How does Baselime count events for billing?

Distributed traces are counted using the number of unique trace IDs received from your services. If a trace ID is not found, Baselime counts the unique request ID associated with your transactions.

If a trace goes through multiple request ID, each request is counted individually, and the trace is not counted. As such you are not charged twice for the same requests.

If Baselime receives a trace with a unique trace ID, but no request matching this trace ID, the trace is counted towards your monthly number of traces.

Baselime counts the number of traces daily and updates your dashboard accordingly.
Baselime counts the number of events daily and updates your dashboard accordingly. Baselime does not count Amazon CloudWatch metrics or Amazon CloudTrail logs as part of the monthly event cap. All other events are counted, include the `START`, `END` and `REPORT` log lines from serverless functions.

---

## Does Baselime support containers?

Baselime works with any environment where OpenTelemetry is available. Moreover, Baselime provides an HTTP API where you can send events individually from environments where OpenTelemetry is not available.

Baselime has a native integration with both serverless and container platforms on AWS:
- AWS Lambda
Baselime has a native integration with container platforms on AWS:
- Amazon ECS (Fargate and EC2)
- Amazon AppRunner

These integration enable logs, metrics and traces generated without OpenTelemetry to be automatically ingested into Baselime.
---

## Does Baselime support multi-accounts and multi-regions?
Expand All @@ -46,10 +40,12 @@ Yes, Baselime supports for multi-account and multi-region setups. When you conne

---

## How easy is it to instrument my applications?
## How easy is it to instrument my AWS applications?

When you connect your AWS account to Baselime, logs from your AWS Lambda functions, API Gateways and AppRunner services, and metrics from your entire AWS account are automatically ingested into Baselime. No further setup is required.

When you connect your Vercel account to Baselime, all your Vercel application logs, edge function logs and build logs are ingested into Baselime. No further setup is required.

Moreover, if you have Amazon X-Ray enabled on your services (both serverless functions and containers), these traces are automatically ingested into Baselime.

To use OpenTelemetry distributed tracing, add the `baselime:tracing` tag to your AWS Lambda functions using the Node.js runtime and these will be automatically instrumented. We're currently working on more runtimes.
Expand All @@ -58,6 +54,13 @@ For any other runtimes or environments, instrument your applications with OpenTe

---

## How easy is it to instrument my Vercel applications?


When you connect your Vercel account to Baselime, all your Vercel application logs, edge function logs and build logs are ingested into Baselime. No further setup is required.

---

## How do I get distributed tracing?

Baselime supports both OpenTelemetry and AWS X-Ray for distributed tracing. If you application is already instrumented with OpenTelemetry, change the destination of your instrumetation to the Baselime endpoint:
Expand Down Expand Up @@ -131,4 +134,7 @@ Baselime relies on a few AWS resources in your AWS account, most notably:

These services may add a minimal cost on your AWS monthly bill. Please refer to the [AWS princing calculator](https://calculator.aws/) for estimates based on your usage.

## Does Baselime have an impact on my Vercel bill?

No, Baselime doesn't have any impact on your Vercel bill.

29 changes: 18 additions & 11 deletions what-is-baselime.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,22 +20,29 @@ Our mission is to simplify the complexity of distributed cloud-native systems. W

## How is Baselime different?

Traditional monitoring solutions were built for a world where most applications were single monolithic applications. These solutions lack when it comes to microservices in 3 major ways:
- **Data volume and cardinality**: Microservices generate a higher amounts of data with higher cardinality. The cost of traditional solutions scales exponentially with higher cardinality data.
- **Query speed**: Traditional solutions are typically based on slower data stores, and queries are fast only when your dataset is small.
- **Distributed tracing**: Microservices handle distributed transactions across multiple services and serverless functions. Traditional solutions based on logs struggle to capture the end-to-end transactions.
Baselime is fundamentally different from most other observability and monitoring providers in 4 key aspects:

Baselime directly connects to your cloud account and uses OpenTelemetry to automatically instrument your microservices.
### High cardinality and dimentionality

!!!
Do you want to learn more about OpenTelemetry? Start [here](https://opentelemetry.io/).
!!!
Cardinality and dimentionality are best described using examples. Imagine you log an HTTP request that makes database calls.

Baselime uses our proprietary query engine built on top of ClickHouse, the fastest columnar database in the world. Baselime indexes all your telemetry data, regardless of the cardinality and dimensionality. From day 0, everything is queriable and searchable, and correlation between data sources is a breeze.
- High cardinality means that in your logs, you can have a unique `userId` or `requestId` (which can take over a million distinct values). Those are high cardinality fields. Baselime enables you to query against any specific value of a high cardinality field so that you can narrow down your search to a specific user or request.

Baselime does not perform any pre-aggregation of data before ingestion; this means you can run arbitrary queries on you telemetry data, and get answers about the state of your application, regardless of how unusual or unique this state is.
- High dimensionality means that in your logs, you can have thousands of possible fields. You can record each HTTP header of your request and the details of each database call. Any log can be a key-value object with thousands of individual keys. Baselime indexes every single one of the keys and enables you to query against every one of them.

![Baselime in your ecosystem](./assets/images/illustrations/o11y-for-serverless/ecosystem.png)
From day 0, everything is queriable and searchable, and correlation between data sources is possible. Baselime does not perform any pre-aggregation of data before ingestion; this means you can run arbitrary queries on you telemetry data, and get answers about the state of your application.

### Query speed

Baselime is built on top of ClickHouse, the fastest analytics database in the world. When debugging real production outages, the ability to ask questions and get answers fast is most important.

### Real-time data ingestion

Baselime ingests data from your application in real-time. Telemetry data is available for you to query or for the real-time alerting within seconds of it being generated by your applications.

### Metadata annotations

Baselime automatically adds all the metadata necessary to contextualise your telemetry data: `hostname`, `hostID`, serverless function name, service name, cloud account and region, etc. All this data is automatically captured by Baselime. It enables you to efficiently identify patterns based on those parameters automatically.

Moreover, Baselime gives your control over the residency of your data. Either using our backend or a **Bring Your Own Backend** solution where all the data is stored on your cloud account.

Expand Down

0 comments on commit c25ccbc

Please sign in to comment.