OpenSearch vs Grafana Loki

OpenSearch suits teams that need full-text search and a SIEM backend with built-in security controls. Loki suits teams that prioritize low-cost retention on object storage and can accept a thinner query and security feature set.

On this page

Which to choose: OpenSearch or Grafana Loki for security logging

Choose OpenSearch when investigations and detection drive the design: full-text search across raw events, Sigma-based detection through Security Analytics, and authentication built into the cluster. Choose Loki when long retention on object storage and Grafana-centric dashboards matter most and your analysts already work in Grafana. The decision turns on five questions: how much free-text search you need compared with label-based filtering, how long you must keep logs, whether the AGPLv3 license of Loki is acceptable to your legal team compared with the Apache-2.0 terms of OpenSearch, how you will integrate identity, and how many engineers you can staff to run the stack. Score each one against your own requirements before you choose.

Identity is where the gap is widest. The OpenSearch Security plugin supports SAML, OpenID Connect, Active Directory and LDAP, Kerberos and JSON Web Token authentication, and it adds role-based access control, document-level and field-level security and audit logs. Loki has no built-in authentication layer. Its documentation says you must place an authenticating reverse proxy, such as nginx, HAProxy, OAuth2 Proxy or Pomerium, in front of it. With multi-tenancy enabled through auth_enabled, tenant selection depends on the X-Scope-OrgID header, so the proxy must strip client-supplied values and set them itself. Have your security engineers design and test that proxy against your directory before you commit, and budget it as a named work item in the plan. The Loki authentication documentation is the starting point for that design.

Retention and operating effort shape the total cost. Loki stores compressed chunks and its index in object storage, but retention is disabled by default, so logs stay indefinitely until you set retention_enabled and define rules globally, per tenant or per stream selector, each at least 24 hours. Loki's monolithic mode fits up to about 20 GB of logs per day, and simple scalable mode is being deprecated and removed with Loki 4.0, so plan for a supported topology at higher volumes. OpenSearch keeps indexed text on hot and warm storage, so its costs rise with volume and retention, and its effort centers on index lifecycle policies and cluster sizing. Ask for a sizing review based on your daily volume, retention periods and query patterns before you compare quotes.

Which platform fits which logging scenario

This table maps common logging scenarios to the platform that fits better and the reason tied to a documented capability. Read each row as a starting point: the deciding factor is usually the one in the reason column, and the confirm column names what to verify in your own environment before you commit.

ScenarioBetter fitReason
SOC threat hunting with full-text search across raw eventsOpenSearchFull-text indexing supports free-text pivots across fields, and Security Analytics matches ingested logs against Sigma rules and correlates findings across log types.
Sigma-based detection content maintained as a SIEM workflowOpenSearchSecurity Analytics ships prepackaged Sigma rules and accepts custom ones, so detection logic lives in the same cluster as the logs. Loki has no equivalent built-in rule matching.
Compliance log retention with no automatic deletion riskConfirm for bothLoki retention is disabled by default, so logs are kept until you enable it. OpenSearch retention depends on your index lifecycle policies. Confirm the retention periods your control owner requires and test both setups.
High-volume application logs queried mostly by known labelsGrafana LokiLoki indexes labels rather than full text and stores compressed chunks in object storage, which suits high ingest volumes where queries filter by service or stream first.
Grafana-centric observability teams already running GrafanaGrafana LokiLoki is built to be queried from Grafana alongside metrics, and Grafana Alloy is the supported log shipper. Confirm the Grafana edition and features your team needs.
Access control on log data at field or document levelOpenSearchThe Security plugin provides document-level and field-level security, field masking and audit logs. Loki has no built-in authentication, so you must add an authenticating reverse proxy.
Teams without Kubernetes skills running on virtual machinesOpenSearchOpenSearch documents tarball, RPM, Debian and Ansible installs, while Loki's simple scalable mode is being deprecated and its microservices mode suits large clusters. Confirm the mode you plan to run.
Teams that need long-term storage on low-cost object storageGrafana LokiLoki's recommended production stores include Amazon S3, Google Cloud Storage and Azure Blob Storage. Confirm your storage costs and retention targets before choosing.

How OpenSearch and Loki are built and what that means for operations

OpenSearch and Loki make opposite bets about where log cost and query power live. OpenSearch indexes content into a search cluster, while Loki stores compressed chunks and a small index in object storage. The cards below cover the components, deployment modes and operating tasks that follow from those choices.

Indexed cluster with a security plugin

OpenSearch stores log content in a distributed index that is searchable field by field, and the Security plugin sits inside the same cluster for authentication, role-based access, document and field-level security and audit logs. Running it means sizing data, master and coordinating nodes, planning shard counts and managing heap and disk per node. Confirm which Security plugin features your chosen distribution enables by default before you design the access model.

Compressed chunks plus a light index

Loki keeps compressed log chunks and its index in object storage, and only labels are indexed, so the full text of each line is not searched in place. Storage growth follows object storage pricing and compression rather than index size. The trade-off is that queries filtered by labels are fast, while unlabeled text searches scan more data. Check which label scheme your teams will use before you ingest production logs.

Monolithic mode for small volumes

Monolithic mode runs Loki as a single binary, which is the simplest option for a lab or a small team. Grafana documents it for up to about 20 GB of logs per day, so a security program that expects more traffic should not stay here. Operations are minimal, but a single process is also a single point of failure, so confirm the recovery plan before relying on it for detection.

Simple scalable mode is being deprecated

Simple scalable mode splits Loki into read, write and backend targets and is documented up to roughly 1 TB per day. The Loki documentation states that this mode is being deprecated and will be removed with the Loki 4.0 release. Any design built on it needs a planned move to microservices or another supported layout before that release, and the migration effort should be written into the project plan.

Microservices for very large clusters

Microservices mode runs each Loki component separately and is intended for very large clusters, so it adds the most moving parts to deploy, monitor and upgrade. Teams with Kubernetes experience can manage it, but teams without that skill should plan for training or a partner. Ask who owns capacity planning for ingesters, queriers and the compactor, and how each component is upgraded without losing ingestion.

Upgrades and maintenance windows

OpenSearch publishes minor releases about every eight weeks, and each version receives bug and security fixes during maintenance but no new features. Upgrades involve rolling restarts of a cluster that holds indexed data, and the OpenSearch documentation covers rolling upgrades from supported Elasticsearch 7.10-compatible versions. Loki upgrades touch fewer stateful components, but compactor and retention settings should be checked on each release. Schedule both against your change calendar and test on a copy of production data.

How full-text indexing and label indexing change query power and storage cost

The core difference is what each system indexes. OpenSearch builds an inverted index over the content of log messages and the fields inside them, so analysts can search raw text, run aggregations across any field and build detections on message content. Loki indexes only the stream labels attached to each log stream, such as cluster, namespace or host, and stores the compressed log chunks in object storage. That design keeps the index small and cheap to hold, but a query for a string that appears in no label has to read and scan the chunks it selects. Full-text indexing buys query power at the price of more disk, more heap and more cluster capacity to hold the index hot.

Storage and memory cost follow from that choice. An OpenSearch cluster pays for index structures on fast storage and for the JVM heap that serves searches and aggregations, and both grow with the volume of text you ask it to index. A Loki deployment pays mainly for object storage capacity and for the compute that reads chunks at query time, and its retention is set through the compactor, which is disabled by default, so logs are kept indefinitely until retention_enabled is set. Confirm your own retention targets before comparing storage bills, because the unchecked default on Loki can grow storage without any alarm.

The trade-off depends on how analysts actually work. If most investigations start from a known host, user or stream and then need a few fields, label filters in Loki are usually enough. If detection engineers hunt for indicators inside message bodies, correlate arbitrary fields across sources or run Sigma-style rules that match content, the full-text model in OpenSearch is the better fit. Before you decide, measure what share of your saved queries filter only on labels and what share search message text, and check whether your key security fields can be promoted to labels without creating high cardinality. For a security logging program, that query log is the most useful input you can bring to a quote.

OpenSearch and Loki side by side on security logging needs

This table compares OpenSearch and Grafana Loki on the capabilities a security logging program usually needs, from license and authentication to retention and shipper support. Where a capability is not covered by the researched facts, the cell tells you what to confirm, so treat unconfirmed cells as checklist items for your own evaluation. The main takeaway is that OpenSearch ships access control and audit features in the open-source core, while Loki leaves authentication to a reverse proxy and centers on low-cost object storage.

CapabilityOpenSearch 3.9.0Grafana Loki v3.7.8
LicenseApache-2.0 for all project software; no paid edition described in the FAQAGPLv3, moved from Apache 2.0 announced April 20, 2021
Query modelFull-text indexed search and analytics over indexed fieldsLabel-indexed streams; log content is queried by scanning chunks, so label design drives speed
AuthenticationSecurity plugin supports SAML, OpenID Connect, Active Directory, LDAP, Kerberos and JWTNo built-in authentication; you must run an authenticating reverse proxy such as nginx, HAProxy, OAuth2 Proxy or Pomerium
Role and field-level securityRole-based access, document-level and field-level security, and field maskingTenant separation through X-Scope-OrgID when auth_enabled is true; confirm any finer-grained control in your setup
Audit logsAudit logs and TLS for node and client traffic are documented in the Security pluginNot covered by the supplied Loki facts; confirm with your proxy and platform logging
SIEM detection contentSecurity Analytics matches logs against prepackaged or custom Sigma rules and correlates findingsNo detection engine in the supplied facts; confirm whether alerting rules meet your use case
Retention controlsIndex lifecycle and retention depend on your configuration; confirm the policy options in your versionCompactor-applied retention, disabled by default; can be set globally, per tenant or per stream selector, minimum 24 hours per rule
Object storage supportDesigned around local index storage; confirm any object-tier option for your versionChunks and index in object storage; Amazon S3, Google Cloud Storage and Azure Blob recommended for production
Multi-tenancyConfirm tenant model with your security plugin configurationMulti-tenant when auth_enabled is true, identified by X-Scope-OrgID on each request
Log shippersConfirm supported ingestion tools and pipelines for your sourcesGrafana Alloy is the supported shipper; also accepts Fluent Bit, Fluentd, Docker logging driver and OpenTelemetry logs over HTTP

Apache-2.0 against AGPLv3: what each license means for internal platforms

If your platform team runs a logging stack only for your own engineers, security analysts and auditors, the license question is usually about internal use and record keeping. OpenSearch is licensed under Apache-2.0, and the OpenSearch FAQ does not describe any paid edition, so there is no edition gate to plan around when you size the cluster. Loki is licensed under AGPLv3, which Grafana Labs adopted for Loki and its other core projects on April 20, 2021, after moving them from Apache License 2.0.

  • Edition gating: OpenSearch's FAQ describes no paid tier, so the feature set you deploy is the feature set you run. Confirm this against the current FAQ before you write it into a design.
  • Internal use: Running Loki unmodified for your own staff is the scenario most teams plan for, but the AGPLv3 terms still apply to the software you run.
  • Dependencies: Check whether any agent, dashboard or exporter in your pipeline carries a different license than the core engine.
  • Change control: If you pin versions, record the license of each component in your asset inventory so auditors can trace it.

Ask counsel whether internal-only use creates any AGPLv3 duty for your organization, and document the answer alongside the deployment record.

How authentication and retention differ in practice

Authentication and retention are where OpenSearch and Loki ask for different amounts of design work before the first log arrives. OpenSearch Security ships with SAML, OpenID Connect, Active Directory and LDAP, Kerberos and JSON Web Token authentication backends, along with role-based access control, document-level and field-level security, field masking, user impersonation, audit logs and TLS for node and client traffic. Your team maps directory groups to roles and decides which analysts can see which indices and fields. Loki takes a different route. It has no built-in authentication layer, so you must run an authenticating reverse proxy such as nginx, HAProxy, OAuth2 Proxy or Pomerium in front of it. Tenancy comes from the X-Scope-OrgID header when auth_enabled is true, which means the proxy must set or validate that header, or tenants can be spoofed.

Confirm the authentication path before you pick a design. For Loki, ask who owns the reverse proxy, how it integrates with your identity provider, and how audit records of queries will be kept, since Loki does not supply that trail on its own. For OpenSearch, confirm in your own test cluster which backends and audit settings your chosen distribution exposes, and check the OpenSearch security documentation against the version you plan to run.

Retention is the other practical difference. In Loki, retention is disabled by default, so logs are kept indefinitely until you set retention_enabled. The compactor applies it, and you can set it globally, per tenant or per stream selector. Each stream rule must be at least 24 hours, so a short-lived security stream needs a deliberate rule, and you should test that the compactor runs as expected in your deployment. OpenSearch has no equivalent default you can rely on. Your team must design index lifecycle policies, rollover thresholds, hot and cold tiers and snapshot schedules, and then verify them against legal hold and investigation windows. Write the retention table with your compliance owner before either platform receives production logs.

What drives the running cost of each logging stack

This table sets out the cost components of a self-hosted OpenSearch stack against a self-hosted Loki stack, showing who is paid, what recurs and what moves the total. Read each row as a question to put to your own environment and to any implementation partner's written scope.

Cost driverOpenSearchGrafana Loki
Cluster nodes and computeData, master and coordinating nodes sized for indexing and query load. Full-text indexing makes CPU and disk I/O a recurring cost that grows with ingest volume and retention.Monolithic mode runs one binary. Larger volumes move to simple scalable or microservices targets. Compute is lighter for ingest because only labels are indexed, but query fan-out still needs capacity.
Memory and diskHeap and file-system cache sized against shard count and indexed fields. Hot storage on local disk is a recurring line item that drives most of the bill.Memory is mainly for ingesters, queriers and caches. Local disk is small because chunks and index sit in object storage. Confirm cache and ingester sizing with your own log profile.
Object storageOptional for most deployments, used for snapshots and archiving. Recurring cost depends on snapshot frequency and retention.Primary store for compressed chunks and the index. Recurring cost tracks retained volume, so retention settings directly change the monthly bill. Ask which object store your provider bills and at what request rate.
Skills and operator timeCluster tuning, index lifecycle policies, shard planning and security plugin configuration. Expect recurring operator time for ongoing tuning and index management.Label design, stream selectors, compactor and retention rules, and tenant configuration. Poor label choices raise query cost and ingest pressure, so design time recurs as sources change.
Reverse proxy and identity componentsSecurity plugin provides SAML, OpenID Connect, LDAP and related backends, so authentication can sit inside the product. Licensing is free, but integration and certificate management are recurring work.Loki has no built-in authentication layer. You must run an authenticating reverse proxy such as nginx, HAProxy, OAuth2 Proxy or Pomerium. The proxy, its certificates and its upgrades are extra components to operate.
Shipper choiceCommon agents and pipelines feed the cluster. Pipeline complexity is a recurring cost when parsing and enrichment move into indexing.Grafana Alloy, Fluent Bit, Fluentd, the Docker logging driver or OpenTelemetry logs over HTTP. Choosing a shipper early avoids re-tooling each source later.
Upgrades and version supportOpenSearch targets a new minor version about every eight weeks and maintains each version until the next major enters maintenance or one year passes, whichever is longer (OpenSearch releases page). Plan recurring upgrade windows against that cadence.Loki releases are tracked on GitHub. The documentation states that simple scalable mode is being deprecated and will be removed in Loki 4.0, so a deployment mode change may become a one-time migration project.
Support optionsCommunity support is free under Apache-2.0. Paid support or a retainer is a recurring cost, and is available from vendors and third parties. Ask for response scope, upgrade help and testing in writing.Grafana Labs offers paid products such as Grafana Enterprise Logs. Confirm which features and support terms apply to your deployment before budgeting. Independent operators also support the open-source build.

Moving logs from Loki to OpenSearch or the reverse

This sequence moves log sources, retention, dashboards and detection logic from one backend to the other without losing coverage during the switch. The end state is a cut-over where the new backend answers the same security questions the old one did, with the old one kept read-only for a defined period.

  1. Inventory sources, labels and streams

    The platform team lists every log source, shipper and tenant that writes to the current backend, then records how Loki streams are labeled or how OpenSearch indices and fields are named. Loki's label model and OpenSearch's document model do not map one to one, so each source gets a target index pattern or tenant header and a note on which labels become fields. Security engineers confirm which fields detections depend on. The step closes when the inventory is signed off and every source has a named owner and a target.

  2. Decide retention per index or tenant

    Before any data moves, the team sets retention separately for each target. In Loki, retention is applied by the compactor and stays off until it is enabled, so a migration that never turns it on will keep logs indefinitely. In OpenSearch, retention is usually handled through index lifecycle or index rollover policies, which the team should confirm in the current docs. Compliance and legal owners confirm the required retention periods for each log class. The step closes when a written retention table exists for every target index or tenant.

  3. Rebuild dashboards and detection rules

    Dashboards and alert rules are rewritten, not exported and imported. LogQL queries on Grafana panels need to become OpenSearch query DSL or PPL searches, and any detection that relied on label selectors needs an equivalent field-based condition. Detection engineers test each rebuilt rule against sample events from the source system and record which rules were retired or changed in meaning. Confirm with the vendor whether any migration tooling covers rule translation, since none should be assumed. The step closes when each rule has a test result and an owner.

  4. Dual-run shippers into both backends

    Reconfigure the shipper so events reach the old and new backends at the same time. Grafana Alloy, Fluent Bit, Fluentd, the Docker logging driver and OpenTelemetry sources can usually be pointed at two outputs, but the team should confirm each shipper's multi-output behavior and buffering limits. During this phase, compare event counts, timestamps and field values for a set of sample systems. The step closes when discrepancies are explained and the new backend matches the old one on agreed checks for the test window.

  5. Backfill or archive historical data

    Historical logs are handled as a separate decision. Some teams re-ingest recent history into the new backend so investigations span the cutover, while others keep the old backend read-only and query it for the retention period. Loading historical data into OpenSearch from Loki objects, or the reverse, is not a simple copy because the storage formats differ, so the team should ask the vendor how the data would be exported and reindexed. The step closes when the team has recorded which history is loaded, which stays archived, and where the archive is queried.

  6. Cut over and confirm detection coverage

    The team switches the production outputs to the new backend, keeps the old one read-only, and confirms that dashboards, alerts and investigations run against the new system. Security operations checks that known test events still trigger the expected detections. Access is moved to the new backend's authentication model, since Loki needs an authenticating reverse proxy in front of it while OpenSearch Security provides its own authentication backends. The step closes when a signed cutover record lists owners, the detection test results and the date the old backend became read-only.

  7. Retire the old backend on a documented schedule

    After cutover, the old backend stays read-only for a period the compliance owner sets, so that investigations and audit requests can still reach it. Once that period ends, the team exports any retained evidence, removes shipper configuration pointing at the old system, revokes its credentials and records the decommissioning. Ask the vendor or auditor which evidence must be kept before anything is deleted. The step closes when the decommissioning record is filed and no shipper or dashboard still references the old backend.

Where OpenSearch and Loki implementations usually run long

The longest parts of an OpenSearch project are rarely the installation. They are sizing, shard and index lifecycle design, and the Security plugin's role mapping, because each of these decisions is hard to reverse once logs are flowing. Ask the implementer to size the cluster from your actual daily ingest, retention period and query pattern, and to write down the index naming, rollover conditions and shard counts before any production source is connected. Index lifecycle policies that delete or move data later are easy to set and expensive to get wrong. On the security side, map each identity provider group to an OpenSearch role deliberately, covering index patterns, document-level and field-level restrictions and the audit log settings your investigators need. Detection content deserves its own budget line: Security Analytics rules, whether prepackaged or custom Sigma rules, will generate noise that must be tuned against your own sources before anyone trusts the findings. Confirm in writing who owns that tuning after go-live.

Loki projects tend to run long in four places. The first is the object store: choosing Amazon S3, Google Cloud Storage or Azure Blob Storage for production, configuring credentials, lifecycle behavior and TSDB index storage is where most setup questions surface. Self-hosted S3-compatible stores and the local filesystem are supported, but the Loki documentation notes they are not typically recommended for production, so confirm that choice with your storage team early. The second is retention. Retention is disabled by default, so logs are kept indefinitely until the compactor is configured with retention_enabled and a rule set, and each stream rule must be at least 24 hours. The third is authentication. Loki has no built-in authentication layer, so the authenticating reverse proxy, whether nginx, HAProxy, OAuth2 Proxy or Pomerium, is a design item in its own right, and it must also pass the X-Scope-OrgID header correctly when multi-tenancy is enabled. The fourth is shipper configuration, where Grafana Alloy, Fluent Bit or Fluentd must label streams consistently or queries become hard to scope. Ask for the tenant model, the compactor settings and the proxy design to be written into the scope before work starts.

Questions teams ask before choosing OpenSearch or Loki

Which costs more to run, OpenSearch or Grafana Loki?

Neither license charges a fee, so the cost comes from infrastructure, storage and the people who run the platform. Loki keeps compressed log chunks and its index in object storage, and its documentation recommends Amazon S3, Google Cloud Storage or Azure Blob Storage for production. OpenSearch indexes full text, so it usually needs fast disk, more memory and more nodes as volume grows. The cost drivers to model are:

  • Daily ingest volume and how long you keep logs
  • Replica count and index sizing for query speed
  • Compute and storage prices in your own cloud or data center
  • Staff hours for upgrades, tuning and on-call duty

Ask any implementer for a quote that separates one-time build work from recurring run costs.

Can Grafana Loki do SIEM work for security teams?

Loki can store and query security logs, but the supplied facts do not show detection rules, correlation or case management for Loki, so confirm those capabilities with Grafana Labs before you rely on them. OpenSearch Security Analytics matches ingested logs against prepackaged or custom Sigma rules, records findings and correlates them across log types, so OpenSearch can serve as a SIEM backend without a separate product. If your analysts need rule-based detection from the start, OpenSearch is the closer fit. If detection already runs in another tool and you mainly need low-cost, long-term log retention, Loki can serve as the storage layer. Test the detections you need against real log samples in your environment before you commit.

Does OpenSearch need Kubernetes to run in production?

No. OpenSearch documents installation with Docker, Helm, the OpenSearch Kubernetes Operator, tarball, RPM, Debian packages, an Ansible playbook and Windows, so a team can run it on virtual machines with a package install. Kubernetes becomes a choice you make for operational reasons, such as an existing cluster platform or tooling your staff already operate. Loki's deployment mode depends on scale instead: monolithic for up to about 20 GB of logs per day, simple scalable for approaching 1 TB per day, and microservices for very large clusters. Simple scalable mode is being deprecated and will be removed with Loki 4.0, so plan a path forward if you choose it. Confirm which install method your staff can support over the long term.

How long does a migration take and what staff does it need?

The duration depends on data volume, source log formats, query rewrites and how much history you must carry, and no supplied fact gives a timeline, so ask for one in the written scope. Moving between the two platforms means re-ingesting logs into a different data model, so the work is a migration project, not a version upgrade. OpenSearch work calls for Linux operations, index and shard sizing, and Security plugin configuration. Loki work calls for object storage administration, compactor settings, label design and an authenticating reverse proxy. Plan parallel running so your analysts can validate queries and alerts before you cut over.

Can our team run OpenSearch or Loki without outside help?

It depends on your team's skills. A team with Linux and object storage experience can operate either platform, but the daily work differs. OpenSearch operations include cluster sizing, upgrades during maintenance, security configuration and backups. Loki operations include label design, retention through the compactor, object storage access and the reverse proxy in front of it. DeployOpen plans, implements, customizes, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside the client's own infrastructure. Most engagements are fixed-scope, with scope, deliverables and timelines agreed in writing before work starts, and ongoing support is available as a retainer. Ask any implementer which tasks your staff keep and which move to the engagement.

Which license works for a managed logging service?

OpenSearch is licensed under Apache-2.0, and the supplied facts do not describe a restriction on offering it as a managed service. Loki is licensed under AGPLv3, which Grafana Labs adopted on April 20, 2021, when it moved Loki from Apache License 2.0. The AGPLv3 network-use obligation can require a provider that modifies Loki and offers it to users over a network to make the modified source available. Any provider offering logging as a service should review these terms with counsel before building on Loki. Check the licensing page for Grafana's commercial terms, and check the license of every other component in the stack as well.

How does authentication differ between OpenSearch and Loki?

OpenSearch includes more access control in the open-source distribution. Its Security plugin supports SAML, OpenID Connect, Active Directory, LDAP, Kerberos and JSON Web Token authentication, plus role-based access control, document and field level security, field masking, user impersonation, audit logs and TLS for node and client traffic. Loki has no built-in authentication layer, and its documentation says to run an authenticating reverse proxy such as nginx, HAProxy, OAuth2 Proxy or Pomerium in front of it. Loki's multi-tenancy uses the X-Scope-OrgID header once auth_enabled is true, but that header identifies a tenant and does not verify the caller. Design the proxy, identity integration and audit trail before go-live.

How does log retention work in Loki compared with OpenSearch?

Loki retention is off until you enable it. The compactor applies retention, and it is disabled by default, so logs stay indefinitely until retention_enabled is set. You can set retention globally, per tenant or per stream selector, and each stream rule must be at least 24 hours. Storage cost then follows the retention you choose and your object storage prices. OpenSearch retention depends on how you design index lifecycles, snapshots and storage, and the supplied facts do not detail that mechanism, so confirm it with your implementer. For compliance-driven retention, write the retention periods, snapshot targets and restore tests into the scope before you go live.

How DeployOpen helps teams choose and implement a logging platform

Teams that bring DeployOpen into this decision should expect the work to start with a written scope that names both candidates, the log sources to ingest, the retention periods your policy requires and the access model analysts will use. DeployOpen plans, implements, hardens, backs up, upgrades and documents self-hosted platforms inside the client's own cloud accounts, data centers or air-gapped networks, and it runs security testing and compliance readiness work alongside that build. The team does not favor OpenSearch or Loki in advance. A proof of concept is only useful if it measures the queries your analysts run, the volume your sources produce and the cost of keeping data for the agreed period, so those tests are defined in the scope before any installation begins.

Authentication is where the two designs differ most in day-to-day operation, so the scope should decide it early. The OpenSearch Security plugin provides SAML, OpenID Connect, LDAP, Kerberos and JSON Web Token backends, role-based access control, document-level and field-level security, field masking and audit logs in the same product. Loki has no built-in authentication layer, so an authenticating reverse proxy such as nginx, HAProxy, OAuth2 Proxy or Pomerium must sit in front of it, and tenant separation depends on auth_enabled and the X-Scope-OrgID header. The design work should confirm which identity provider you use, how the proxy maps users to tenants and whether any log stream must be restricted at field level. The Loki authentication documentation is the natural starting point for that review.

Engagements are usually fixed-scope, so the deliverables are agreed in writing before work starts: an architecture description, configuration baselines, retention and backup runbooks, and the evidence needed for compliance readiness. DeployOpen prepares systems, controls and evidence for assessments, but independent auditors and certification bodies issue any audit report or attestation. Quotes follow from that written scope, so ask for line items covering infrastructure sizing, licensing review, integration with your identity provider and sources, testing, and handover. Ongoing support, upgrades and continuous testing are available as retainers, and the retainer terms should be compared with the cost of running either stack in-house, since the operating effort recurs for the life of the platform.

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.