**What this PR does / why we need it**:
Deprecates old index types: `aws, aws-dynamo, gcp, gcp-columnkey,
bigtable, bigtable-hashed, cassandra, grpc`. Only `tsdb` and
`boltdb-shipper` are supported.
Deprecates non-object stores. The next major release might not allow the
usage of these as `object_store` in `schema_config`: `aws-dynamo, gcp,
gcp-columnkey, bigtable, bigtable-hashed, cassandra, grpc.`
Deprecates table manager which is not needed once when using
`boltdb-shipper` or `tsdb` index type
**Which issue(s) this PR fixes**:
Fixes #<issue number>
**Special notes for your reviewer**:
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [ ] Documentation added
- [ ] Tests updated
- [x] `CHANGELOG.md` updated
- [ ] If the change is worth mentioning in the release notes, add
`add-to-release-notes` label
- [ ] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/setup/upgrade/_index.md`
- [ ] For Helm chart changes bump the Helm chart version in
`production/helm/loki/Chart.yaml` and update
`production/helm/loki/CHANGELOG.md` and
`production/helm/loki/README.md`. [Example
PR](d10549e3ec)
* [10302](https://github.com/grafana/loki/pull/10302) **ashwanthgoli**: Removes already deprecated `-querier.engine.timeout` CLI flag and corresponding YAML setting as well as the `querier.query_timeout` YAML setting.
* [10301](https://github.com/grafana/loki/pull/10301) **wildum**: Promtail: users can now define `additional_fields` in cloudflare configuration.
* [10308](https://github.com/grafana/loki/pull/10308) **bboreham** Tracing: elide small traces for Stats call.
* [10341](https://github.com/grafana/loki/pull/10341) **ashwanthgoli** Deprecate older index types and non-object stores - `aws-dynamo, gcp, gcp-columnkey, bigtable, bigtable-hashed, cassandra, grpc`
* [10344](https://github.com/grafana/loki/pull/10344) **ashwanthgoli** Compactor: deprecate `-boltdb.shipper.compactor.` prefix in favor of `-compactor.`.
FromDayTime`yaml:"from" doc:"description=The date of the first day that index buckets should be created. Use a date in the past if this is your only period_config, otherwise use a date when you want the schema to switch over. In YYYY-MM-DD format, for example: 2018-04-15."`
// type of index client to use.
IndexTypestring`yaml:"store" doc:"description=store and object_store below affect which <storage_config> key is used.\nWhich store to use for the index. Either aws, aws-dynamo, gcp, bigtable, bigtable-hashed, cassandra, boltdb or boltdb-shipper. "`
// type of object client to use; if omitted, defaults to store.
ObjectTypestring`yaml:"object_store" doc:"description=Which store to use for the chunks. Either aws, azure, gcp, bigtable, gcs, cassandra, swift, filesystem or a named_store (refer to named_stores_config). If omitted, defaults to the same value as store."`
IndexTypestring`yaml:"store" doc:"description=store and object_store below affect which <storage_config> key is used. Which index to use. Either tsdb or boltdb-shipper. Following stores are deprecated: aws, aws-dynamo, gcp, gcp-columnkey, bigtable, bigtable-hashed, cassandra, grpc."`
// type of object client to use.
ObjectTypestring`yaml:"object_store" doc:"description=Which store to use for the chunks. Either aws (alias s3), azure, gcs, alibabacloud, bos, cos, swift, filesystem, or a named_store (refer to named_stores_config). Following stores are deprecated: aws-dynamo, gcp, gcp-columnkey, bigtable, bigtable-hashed, cassandra, grpc."`
Schemastring`yaml:"schema" doc:"description=The schema version to use, current recommended schema is v12."`
IndexTablesPeriodicTableConfig`yaml:"index" doc:"description=Configures how the index is updated and stored."`
ChunkTablesPeriodicTableConfig`yaml:"chunks" doc:"description=Configured how the chunks are updated and stored."`
GCPStorageConfiggcp.Config`yaml:"bigtable" doc:"description=Configures storing indexes in Bigtable. Required fields only required when bigtable is defined in config."`
GCPStorageConfiggcp.Config`yaml:"bigtable" doc:"description=Deprecated: Configures storing indexes in Bigtable. Required fields only required when bigtable is defined in config."`
GCSConfiggcp.GCSConfig`yaml:"gcs" doc:"description=Configures storing chunks in GCS. Required fields only required when gcs is defined in config."`
CassandraStorageConfigcassandra.Config`yaml:"cassandra" doc:"description=Configures storing chunks and/or the index in Cassandra."`
BoltDBConfiglocal.BoltDBConfig`yaml:"boltdb" doc:"description=Configures storing index in BoltDB. Required fields only required when boltdb is present in the configuration."`
CassandraStorageConfigcassandra.Config`yaml:"cassandra" doc:"description=Deprecated: Configures storing chunks and/or the index in Cassandra."`
BoltDBConfiglocal.BoltDBConfig`yaml:"boltdb" doc:"description=Deprecated: Configures storing index in BoltDB. Required fields only required when boltdb is present in the configuration."`
FSConfiglocal.FSConfig`yaml:"filesystem" doc:"description=Configures storing the chunks on the local file system. Required fields only required when filesystem is present in the configuration."`
level.Warn(util_log.Logger).Log("msg",fmt.Sprintf("%s is deprecated. Please use one of the supported object stores: %s",storeType,strings.Join(supportedStores,", ")))