# What is Flopsar?

{% hint style="danger" %}
This version is still under development.
{% endhint %}

Flopsar, developed by Flopsar Technology, is a Fault Detection and Diagnosis solution for JVM-based systems. Its mission is straightforward: to detect errors and performance problems in your Java systems quickly, and to help you pinpoint their root cause with confidence.&#x20;

In systems maintenance, availability and responsiveness are everything. Minimizing outages and resolving issues fast are what keep a service healthy. When a system fails, knowing *that* it failed is not enough—you need to know *why*. Flopsar is built to answer that question, so you no longer spend hours, or even days, hunting for the cause.&#x20;

Unlike traditional APM tools, Flopsar does not require you to predict in advance which parts of your system might fail. It does not reduce your application's behavior to vague averages or pre-aggregated metrics that leave you guessing. Instead, Flopsar collects detailed, method-level execution data, so you can see exactly how a request was processed, where time was spent, and where an exception was thrown.&#x20;

Flopsar is highly customizable and extensible. You decide what to monitor through instrumentation profiles, and you can adapt the agent to your own needs without touching your application's source code. Because it works at the JVM level, it integrates with any framework or application server—it is effectively framework-agnostic.&#x20;

Flopsar offers more than monitoring. With plugins, you can extend its capabilities to perform additional processing at runtime, enrich the collected data, and even support scenarios such as distributed transaction tracing—all without modifying your application code.

## How It Works

Flopsar is built from two components:

* **Agent** — a native JVMTI library attached to your Java process. Driven by a profile delivered from the server, it instruments selected methods, builds per-thread execution stacks, and collects parameters, exceptions, CPU time, and JVM metrics. Each agent maintains a single, encrypted connection to the server.
* **Server** — the backend that receives data from agents, stores it, enforces licensing, and serves the REST API. It also acts as an OpenTelemetry backend, accepting trace data over OTLP.&#x20;

You interact with Flopsar through the **Workstation**, the web application that serves as the front end for the server. It is where you explore the collected data: live monitoring, multidimensional analysis, execution stacks, instrumentation profiles, and administration. The Workstation can be served directly by the server's built-in HTTP server or hosted on a separate web server acting as a reverse proxy.

{% hint style="info" %}
For a deeper look at how these components fit together, see Architecture Fundamentals.
{% endhint %}

## What You Can Do with Flopsar

* Identify performance bottlenecks down to a single method invocation.
* Analyze latency distributions, percentiles, and how they change over time.
* Detect, group, and diagnose exceptions, all the way back to their root cause.
* Inspect complete execution stacks, including method parameters and stack traces.
* Observe resource utilization, garbage collection behavior, and JMX metrics.
* Correlate related invocations across a system using a custom parameter.
* Collect OpenTelemetry traces alongside Flopsar's native JVM data.

In short, Flopsar gives developers and system administrators the empirical, fine-grained insight they need to keep Java applications fast, stable, and reliable.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.flopsar.com/7/what-is-flopsar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
