configuration

package
v0.2.39 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 18, 2026 License: Apache-2.0 Imports: 13 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	ServerPort                             string `json:"server_port"`
	EnableSwaggerUi                        bool   `json:"enable_swagger_ui"`
	KafkaUrl                               string `json:"kafka_url"`
	DeviceTopic                            string `json:"device_topic"`
	DeviceTypeTopic                        string `json:"device_type_topic"`
	DeviceGroupTopic                       string `json:"device_group_topic"`
	HubTopic                               string `json:"hub_topic"`
	ProtocolTopic                          string `json:"protocol_topic"`
	ConceptTopic                           string `json:"concept_topic"`
	CharacteristicTopic                    string `json:"characteristic_topic"`
	AspectTopic                            string `json:"aspect_topic"`
	FunctionTopic                          string `json:"function_topic"`
	DeviceClassTopic                       string `json:"device_class_topic"`
	LocationTopic                          string `json:"location_topic"`
	PermissionsV2Url                       string `json:"permissions_v2_url"`
	MongoUrl                               string `json:"mongo_url"`
	MongoTable                             string `json:"mongo_table"`
	MongoRightsCollection                  string `json:"mongo_rights_collection"`
	MongoDeviceCollection                  string `json:"mongo_device_collection"`
	MongoDeviceTypeCollection              string `json:"mongo_device_type_collection"`
	MongoDeviceGroupCollection             string `json:"mongo_device_group_collection"`
	MongoProtocolCollection                string `json:"mongo_protocol_collection"`
	MongoHubCollection                     string `json:"mongo_hub_collection"`
	MongoAspectCollection                  string `json:"mongo_aspect_collection"`
	MongoCharacteristicCollection          string `json:"mongo_characteristic_collection"`
	MongoConceptCollection                 string `json:"mongo_concept_collection"`
	MongoDeviceClassCollection             string `json:"mongo_device_class_collection"`
	MongoFunctionCollection                string `json:"mongo_function_collection"`
	MongoLocationCollection                string `json:"mongo_location_collection"`
	MongoDefaultDeviceAttributesCollection string `json:"mongo_default_device_attributes_collection"`
	Debug                                  bool   `json:"debug"`
	HttpClientTimeout                      string `json:"http_client_timeout"`

	DeviceServiceGroupSelectionAllowNotFound     bool `json:"device_service_group_selection_allow_not_found"`
	AllowNoneLeafAspectNodesInDeviceTypesDefault bool `json:"allow_none_leaf_aspect_nodes_in_device_types_default"`

	InitialGroupRights    map[string]map[string]string `json:"initial_group_rights"`
	RunStartupMigrations  bool                         `json:"run_startup_migrations"`
	InitPermissionsTopics bool                         `json:"init_permissions_topics"`

	LocalIdUniqueForOwner               bool `json:"local_id_unique_for_owner"`
	SkipDeviceGroupGenerationFromDevice bool `json:"skip_device_group_generation_from_device"`

	PreventEmptyCriteriaListsAllBehavior bool `json:"prevent_empty_criteria_lists_all_behavior"`

	SyncInterval     string `json:"sync_interval"`
	SyncLockDuration string `json:"sync_lock_duration"`

	DisableStrictValidationForTesting bool `json:"disable_strict_validation_for_testing"` //only for tests; disables validations and id generations

	StructLoggerLogLevel   string `json:"struct_logger_log_level"`
	StructLoggerLogHandler string `json:"struct_logger_log_handler"`

	ApiDocsProviderBaseUrl string `json:"api_docs_provider_base_url"`

	InitTopics bool `json:"init_topics"`

	LogLevel string `json:"log_level"`
	// contains filtered or unexported fields
}

func Load

func Load(location string) (config Config, err error)

loads config from json in location and used environment variables (e.g ZookeeperUrl --> ZOOKEEPER_URL)

func (*Config) GetLogger added in v0.2.35

func (this *Config) GetLogger() *slog.Logger

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL