mirror of
https://github.com/mainflux/mainflux.git
synced 2025-04-24 13:48:49 +08:00
NOISSUE - Fix Redis envars (#903)
* NOISSUE - Fix Redis envars Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix url Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com> * Fix typo Signed-off-by: Manuel Imperiale <manuel.imperiale@gmail.com>
This commit is contained in:
parent
613e75f7ee
commit
fec058c614
21
.env
21
.env
@ -61,6 +61,9 @@ MF_THINGS_DB_USER=mainflux
|
||||
MF_THINGS_DB_PASS=mainflux
|
||||
MF_THINGS_DB=things
|
||||
MF_THINGS_SECRET=secret
|
||||
MF_THINGS_ES_URL=localhost:6379
|
||||
MF_THINGS_ES_PASS=
|
||||
MF_THINGS_ES_DB=0
|
||||
|
||||
### Normalizer
|
||||
MF_NORMALIZER_LOG_LEVEL=debug
|
||||
@ -96,6 +99,9 @@ MF_BOOTSTRAP_DB_SSL_MODE=disable
|
||||
MF_LORA_ADAPTER_LOG_LEVEL=debug
|
||||
MF_LORA_ADAPTER_MESSAGES_URL=tcp://lora.mqtt.mainflux.io:1883
|
||||
MF_LORA_ADAPTER_HTTP_PORT=8187
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_URL=localhost:6379
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_PASS=
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_DB=0
|
||||
|
||||
### OPC-UA
|
||||
MF_OPCUA_ADAPTER_HTTP_PORT=8188
|
||||
@ -103,17 +109,14 @@ MF_OPCUA_ADAPTER_LOG_LEVEL=debug
|
||||
MF_OPCUA_ADAPTER_SERVER_URI=opc.tcp://opcua.rocks:4840
|
||||
MF_OPCUA_ADAPTER_NODE_NAMESPACE=0
|
||||
MF_OPCUA_ADAPTER_NODE_IDENTIFIER=2256
|
||||
MF_OPCUA_ADAPTER_POLICY=""
|
||||
MF_OPCUA_ADAPTER_MODE=""
|
||||
MF_OPCUA_ADAPTER_CERT_FILE=""
|
||||
MF_OPCUA_ADAPTER_KEY_FILE=""
|
||||
MF_THINGS_ES_URL=localhost:6379
|
||||
MF_THINGS_ES_PASS=""
|
||||
MF_THINGS_ES_DB=0
|
||||
MF_OPCUA_ADAPTER_POLICY=
|
||||
MF_OPCUA_ADAPTER_MODE=
|
||||
MF_OPCUA_ADAPTER_CERT_FILE=
|
||||
MF_OPCUA_ADAPTER_KEY_FILE=
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_URL=localhost:6379
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_PASS=""
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_PASS=
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_DB=0
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_NAME=opcua
|
||||
MF_OPCUA_ADAPTER_EVENT_CONSUMER=opcua
|
||||
|
||||
### Cassandra Writer
|
||||
MF_CASSANDRA_WRITER_LOG_LEVEL=debug
|
||||
|
@ -62,7 +62,7 @@ The service is configured using the environment variables presented in the follo
|
||||
| MF_BOOTSTRAP_ES_URL | Bootstrap service event source URL | localhost:6379 |
|
||||
| MF_BOOTSTRAP_ES_PASS | Bootstrap service event source password | |
|
||||
| MF_BOOTSTRAP_ES_DB | Bootstrap service event source database | 0 |
|
||||
| MF_BOOTSTRAP_INSTANCE_NAME | Bootstrap service instance name | bootstrap |
|
||||
| MF_BOOTSTRAP_EVENT_CONSUMER | Bootstrap service event source consumer name | bootstrap |
|
||||
| MF_JAEGER_URL | Jaeger server URL | localhost:6831 |
|
||||
| MF_BOOTSTRAP_THINGS_TIMEOUT | Things gRPC request timeout in seconds | 1 |
|
||||
|
||||
@ -108,7 +108,7 @@ version: "2"
|
||||
MF_BOOTSTRAP_ES_URL: [Bootstrap service event source URL]
|
||||
MF_BOOTSTRAP_ES_PASS: [Bootstrap service event source password]
|
||||
MF_BOOTSTRAP_ES_DB: [Bootstrap service event source database]
|
||||
MF_BOOTSTRAP_INSTANCE_NAME: [Bootstrap service instance name]
|
||||
MF_BOOTSTRAP_EVENT_CONSUMER: [Bootstrap service event source consumer name]
|
||||
MF_JAEGER_URL: [Jaeger server URL]
|
||||
MF_BOOTSTRAP_THINGS_TIMEOUT: [Things gRPC request timeout in seconds]
|
||||
```
|
||||
|
@ -38,86 +38,86 @@ import (
|
||||
)
|
||||
|
||||
const (
|
||||
defLogLevel = "error"
|
||||
defDBHost = "localhost"
|
||||
defDBPort = "5432"
|
||||
defDBUser = "mainflux"
|
||||
defDBPass = "mainflux"
|
||||
defDBName = "bootstrap"
|
||||
defDBSSLMode = "disable"
|
||||
defDBSSLCert = ""
|
||||
defDBSSLKey = ""
|
||||
defDBSSLRootCert = ""
|
||||
defEncryptKey = "12345678910111213141516171819202"
|
||||
defClientTLS = "false"
|
||||
defCACerts = ""
|
||||
defPort = "8180"
|
||||
defServerCert = ""
|
||||
defServerKey = ""
|
||||
defBaseURL = "http://localhost"
|
||||
defThingsPrefix = ""
|
||||
defUsersURL = "localhost:8181"
|
||||
defThingsESURL = "localhost:6379"
|
||||
defThingsESPass = ""
|
||||
defThingsESDB = "0"
|
||||
defESURL = "localhost:6379"
|
||||
defESPass = ""
|
||||
defESDB = "0"
|
||||
defInstanceName = "bootstrap"
|
||||
defJaegerURL = ""
|
||||
defUsersTimeout = "1" // in seconds
|
||||
defLogLevel = "error"
|
||||
defDBHost = "localhost"
|
||||
defDBPort = "5432"
|
||||
defDBUser = "mainflux"
|
||||
defDBPass = "mainflux"
|
||||
defDBName = "bootstrap"
|
||||
defDBSSLMode = "disable"
|
||||
defDBSSLCert = ""
|
||||
defDBSSLKey = ""
|
||||
defDBSSLRootCert = ""
|
||||
defEncryptKey = "12345678910111213141516171819202"
|
||||
defClientTLS = "false"
|
||||
defCACerts = ""
|
||||
defPort = "8180"
|
||||
defServerCert = ""
|
||||
defServerKey = ""
|
||||
defBaseURL = "http://localhost"
|
||||
defThingsPrefix = ""
|
||||
defUsersURL = "localhost:8181"
|
||||
defThingsESURL = "localhost:6379"
|
||||
defThingsESPass = ""
|
||||
defThingsESDB = "0"
|
||||
defESURL = "localhost:6379"
|
||||
defESPass = ""
|
||||
defESDB = "0"
|
||||
defESConsumerName = "bootstrap"
|
||||
defJaegerURL = ""
|
||||
defUsersTimeout = "1" // in seconds
|
||||
|
||||
envLogLevel = "MF_BOOTSTRAP_LOG_LEVEL"
|
||||
envDBHost = "MF_BOOTSTRAP_DB_HOST"
|
||||
envDBPort = "MF_BOOTSTRAP_DB_PORT"
|
||||
envDBUser = "MF_BOOTSTRAP_DB_USER"
|
||||
envDBPass = "MF_BOOTSTRAP_DB_PASS"
|
||||
envDBName = "MF_BOOTSTRAP_DB"
|
||||
envDBSSLMode = "MF_BOOTSTRAP_DB_SSL_MODE"
|
||||
envDBSSLCert = "MF_BOOTSTRAP_DB_SSL_CERT"
|
||||
envDBSSLKey = "MF_BOOTSTRAP_DB_SSL_KEY"
|
||||
envDBSSLRootCert = "MF_BOOTSTRAP_DB_SSL_ROOT_CERT"
|
||||
envEncryptKey = "MF_BOOTSTRAP_ENCRYPT_KEY"
|
||||
envClientTLS = "MF_BOOTSTRAP_CLIENT_TLS"
|
||||
envCACerts = "MF_BOOTSTRAP_CA_CERTS"
|
||||
envPort = "MF_BOOTSTRAP_PORT"
|
||||
envServerCert = "MF_BOOTSTRAP_SERVER_CERT"
|
||||
envServerKey = "MF_BOOTSTRAP_SERVER_KEY"
|
||||
envBaseURL = "MF_SDK_BASE_URL"
|
||||
envThingsPrefix = "MF_SDK_THINGS_PREFIX"
|
||||
envUsersURL = "MF_USERS_URL"
|
||||
envThingsESURL = "MF_THINGS_ES_URL"
|
||||
envThingsESPass = "MF_THINGS_ES_PASS"
|
||||
envThingsESDB = "MF_THINGS_ES_DB"
|
||||
envESURL = "MF_BOOTSTRAP_ES_URL"
|
||||
envESPass = "MF_BOOTSTRAP_ES_PASS"
|
||||
envESDB = "MF_BOOTSTRAP_ES_DB"
|
||||
envInstanceName = "MF_BOOTSTRAP_INSTANCE_NAME"
|
||||
envJaegerURL = "MF_JAEGER_URL"
|
||||
envUsersTimeout = "MF_BOOTSTRAP_USERS_TIMEOUT"
|
||||
envLogLevel = "MF_BOOTSTRAP_LOG_LEVEL"
|
||||
envDBHost = "MF_BOOTSTRAP_DB_HOST"
|
||||
envDBPort = "MF_BOOTSTRAP_DB_PORT"
|
||||
envDBUser = "MF_BOOTSTRAP_DB_USER"
|
||||
envDBPass = "MF_BOOTSTRAP_DB_PASS"
|
||||
envDBName = "MF_BOOTSTRAP_DB"
|
||||
envDBSSLMode = "MF_BOOTSTRAP_DB_SSL_MODE"
|
||||
envDBSSLCert = "MF_BOOTSTRAP_DB_SSL_CERT"
|
||||
envDBSSLKey = "MF_BOOTSTRAP_DB_SSL_KEY"
|
||||
envDBSSLRootCert = "MF_BOOTSTRAP_DB_SSL_ROOT_CERT"
|
||||
envEncryptKey = "MF_BOOTSTRAP_ENCRYPT_KEY"
|
||||
envClientTLS = "MF_BOOTSTRAP_CLIENT_TLS"
|
||||
envCACerts = "MF_BOOTSTRAP_CA_CERTS"
|
||||
envPort = "MF_BOOTSTRAP_PORT"
|
||||
envServerCert = "MF_BOOTSTRAP_SERVER_CERT"
|
||||
envServerKey = "MF_BOOTSTRAP_SERVER_KEY"
|
||||
envBaseURL = "MF_SDK_BASE_URL"
|
||||
envThingsPrefix = "MF_SDK_THINGS_PREFIX"
|
||||
envUsersURL = "MF_USERS_URL"
|
||||
envThingsESURL = "MF_THINGS_ES_URL"
|
||||
envThingsESPass = "MF_THINGS_ES_PASS"
|
||||
envThingsESDB = "MF_THINGS_ES_DB"
|
||||
envESURL = "MF_BOOTSTRAP_ES_URL"
|
||||
envESPass = "MF_BOOTSTRAP_ES_PASS"
|
||||
envESDB = "MF_BOOTSTRAP_ES_DB"
|
||||
envESConsumerName = "MF_BOOTSTRAP_EVENT_CONSUMER"
|
||||
envJaegerURL = "MF_JAEGER_URL"
|
||||
envUsersTimeout = "MF_BOOTSTRAP_USERS_TIMEOUT"
|
||||
)
|
||||
|
||||
type config struct {
|
||||
logLevel string
|
||||
dbConfig postgres.Config
|
||||
clientTLS bool
|
||||
encKey []byte
|
||||
caCerts string
|
||||
httpPort string
|
||||
serverCert string
|
||||
serverKey string
|
||||
baseURL string
|
||||
thingsPrefix string
|
||||
usersURL string
|
||||
esThingsURL string
|
||||
esThingsPass string
|
||||
esThingsDB string
|
||||
esURL string
|
||||
esPass string
|
||||
esDB string
|
||||
instanceName string
|
||||
jaegerURL string
|
||||
usersTimeout time.Duration
|
||||
logLevel string
|
||||
dbConfig postgres.Config
|
||||
clientTLS bool
|
||||
encKey []byte
|
||||
caCerts string
|
||||
httpPort string
|
||||
serverCert string
|
||||
serverKey string
|
||||
baseURL string
|
||||
thingsPrefix string
|
||||
usersURL string
|
||||
esThingsURL string
|
||||
esThingsPass string
|
||||
esThingsDB string
|
||||
esURL string
|
||||
esPass string
|
||||
esDB string
|
||||
esConsumerName string
|
||||
jaegerURL string
|
||||
usersTimeout time.Duration
|
||||
}
|
||||
|
||||
func main() {
|
||||
@ -147,7 +147,7 @@ func main() {
|
||||
errs := make(chan error, 2)
|
||||
|
||||
go startHTTPServer(svc, cfg, logger, errs)
|
||||
go subscribeToThingsES(svc, thingsESConn, cfg.instanceName, logger)
|
||||
go subscribeToThingsES(svc, thingsESConn, cfg.esConsumerName, logger)
|
||||
|
||||
go func() {
|
||||
c := make(chan os.Signal)
|
||||
@ -192,26 +192,26 @@ func loadConfig() config {
|
||||
}
|
||||
|
||||
return config{
|
||||
logLevel: mainflux.Env(envLogLevel, defLogLevel),
|
||||
dbConfig: dbConfig,
|
||||
clientTLS: tls,
|
||||
encKey: encKey,
|
||||
caCerts: mainflux.Env(envCACerts, defCACerts),
|
||||
httpPort: mainflux.Env(envPort, defPort),
|
||||
serverCert: mainflux.Env(envServerCert, defServerCert),
|
||||
serverKey: mainflux.Env(envServerKey, defServerKey),
|
||||
baseURL: mainflux.Env(envBaseURL, defBaseURL),
|
||||
thingsPrefix: mainflux.Env(envThingsPrefix, defThingsPrefix),
|
||||
usersURL: mainflux.Env(envUsersURL, defUsersURL),
|
||||
esThingsURL: mainflux.Env(envThingsESURL, defThingsESURL),
|
||||
esThingsPass: mainflux.Env(envThingsESPass, defThingsESPass),
|
||||
esThingsDB: mainflux.Env(envThingsESDB, defThingsESDB),
|
||||
esURL: mainflux.Env(envESURL, defESURL),
|
||||
esPass: mainflux.Env(envESPass, defESPass),
|
||||
esDB: mainflux.Env(envESDB, defESDB),
|
||||
instanceName: mainflux.Env(envInstanceName, defInstanceName),
|
||||
jaegerURL: mainflux.Env(envJaegerURL, defJaegerURL),
|
||||
usersTimeout: time.Duration(timeout) * time.Second,
|
||||
logLevel: mainflux.Env(envLogLevel, defLogLevel),
|
||||
dbConfig: dbConfig,
|
||||
clientTLS: tls,
|
||||
encKey: encKey,
|
||||
caCerts: mainflux.Env(envCACerts, defCACerts),
|
||||
httpPort: mainflux.Env(envPort, defPort),
|
||||
serverCert: mainflux.Env(envServerCert, defServerCert),
|
||||
serverKey: mainflux.Env(envServerKey, defServerKey),
|
||||
baseURL: mainflux.Env(envBaseURL, defBaseURL),
|
||||
thingsPrefix: mainflux.Env(envThingsPrefix, defThingsPrefix),
|
||||
usersURL: mainflux.Env(envUsersURL, defUsersURL),
|
||||
esThingsURL: mainflux.Env(envThingsESURL, defThingsESURL),
|
||||
esThingsPass: mainflux.Env(envThingsESPass, defThingsESPass),
|
||||
esThingsDB: mainflux.Env(envThingsESDB, defThingsESDB),
|
||||
esURL: mainflux.Env(envESURL, defESURL),
|
||||
esPass: mainflux.Env(envESPass, defESPass),
|
||||
esDB: mainflux.Env(envESDB, defESDB),
|
||||
esConsumerName: mainflux.Env(envESConsumerName, defESConsumerName),
|
||||
jaegerURL: mainflux.Env(envJaegerURL, defJaegerURL),
|
||||
usersTimeout: time.Duration(timeout) * time.Second,
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -28,29 +28,29 @@ import (
|
||||
)
|
||||
|
||||
const (
|
||||
defHTTPPort = "8180"
|
||||
defLoraMsgURL = "tcp://localhost:1883"
|
||||
defNatsURL = nats.DefaultURL
|
||||
defLogLevel = "error"
|
||||
defESURL = "localhost:6379"
|
||||
defESPass = ""
|
||||
defESDB = "0"
|
||||
defInstanceName = "lora"
|
||||
defRouteMapURL = "localhost:6379"
|
||||
defRouteMapPass = ""
|
||||
defRouteMapDB = "0"
|
||||
defHTTPPort = "8180"
|
||||
defLoraMsgURL = "tcp://localhost:1883"
|
||||
defNatsURL = nats.DefaultURL
|
||||
defLogLevel = "error"
|
||||
defESURL = "localhost:6379"
|
||||
defESPass = ""
|
||||
defESDB = "0"
|
||||
defESConsumerName = "lora"
|
||||
defRouteMapURL = "localhost:6379"
|
||||
defRouteMapPass = ""
|
||||
defRouteMapDB = "0"
|
||||
|
||||
envHTTPPort = "MF_LORA_ADAPTER_HTTP_PORT"
|
||||
envLoraMsgURL = "MF_LORA_ADAPTER_MESSAGES_URL"
|
||||
envNatsURL = "MF_NATS_URL"
|
||||
envLogLevel = "MF_LORA_ADAPTER_LOG_LEVEL"
|
||||
envESURL = "MF_THINGS_ES_URL"
|
||||
envESPass = "MF_THINGS_ES_PASS"
|
||||
envESDB = "MF_THINGS_ES_DB"
|
||||
envInstanceName = "MF_LORA_ADAPTER_INSTANCE_NAME"
|
||||
envRouteMapURL = "MF_LORA_ADAPTER_ROUTEMAP_URL"
|
||||
envRouteMapPass = "MF_LORA_ADAPTER_ROUTEMAP_PASS"
|
||||
envRouteMapDB = "MF_LORA_ADAPTER_ROUTEMAP_DB"
|
||||
envHTTPPort = "MF_LORA_ADAPTER_HTTP_PORT"
|
||||
envLoraMsgURL = "MF_LORA_ADAPTER_MESSAGES_URL"
|
||||
envNatsURL = "MF_NATS_URL"
|
||||
envLogLevel = "MF_LORA_ADAPTER_LOG_LEVEL"
|
||||
envESURL = "MF_THINGS_ES_URL"
|
||||
envESPass = "MF_THINGS_ES_PASS"
|
||||
envESDB = "MF_THINGS_ES_DB"
|
||||
envESConsumerName = "MF_LORA_ADAPTER_EVENT_CONSUMER"
|
||||
envRouteMapURL = "MF_LORA_ADAPTER_ROUTE_MAP_URL"
|
||||
envRouteMapPass = "MF_LORA_ADAPTER_ROUTE_MAP_PASS"
|
||||
envRouteMapDB = "MF_LORA_ADAPTER_ROUTE_MAP_DB"
|
||||
|
||||
loraServerTopic = "application/+/device/+/rx"
|
||||
|
||||
@ -59,17 +59,17 @@ const (
|
||||
)
|
||||
|
||||
type config struct {
|
||||
httpPort string
|
||||
loraMsgURL string
|
||||
natsURL string
|
||||
logLevel string
|
||||
esURL string
|
||||
esPass string
|
||||
esDB string
|
||||
instanceName string
|
||||
routeMapURL string
|
||||
routeMapPass string
|
||||
routeMapDB string
|
||||
httpPort string
|
||||
loraMsgURL string
|
||||
natsURL string
|
||||
logLevel string
|
||||
esURL string
|
||||
esPass string
|
||||
esDB string
|
||||
esConsumerName string
|
||||
routeMapURL string
|
||||
routeMapPass string
|
||||
routeMapDB string
|
||||
}
|
||||
|
||||
func main() {
|
||||
@ -115,7 +115,7 @@ func main() {
|
||||
)
|
||||
|
||||
go subscribeToLoRaBroker(svc, mqttConn, logger)
|
||||
go subscribeToThingsES(svc, esConn, cfg.instanceName, logger)
|
||||
go subscribeToThingsES(svc, esConn, cfg.esConsumerName, logger)
|
||||
|
||||
errs := make(chan error, 2)
|
||||
|
||||
@ -133,17 +133,17 @@ func main() {
|
||||
|
||||
func loadConfig() config {
|
||||
return config{
|
||||
httpPort: mainflux.Env(envHTTPPort, defHTTPPort),
|
||||
loraMsgURL: mainflux.Env(envLoraMsgURL, defLoraMsgURL),
|
||||
natsURL: mainflux.Env(envNatsURL, defNatsURL),
|
||||
logLevel: mainflux.Env(envLogLevel, defLogLevel),
|
||||
esURL: mainflux.Env(envESURL, defESURL),
|
||||
esPass: mainflux.Env(envESPass, defESPass),
|
||||
esDB: mainflux.Env(envESDB, defESDB),
|
||||
instanceName: mainflux.Env(envInstanceName, defInstanceName),
|
||||
routeMapURL: mainflux.Env(envRouteMapURL, defRouteMapURL),
|
||||
routeMapPass: mainflux.Env(envRouteMapPass, defRouteMapPass),
|
||||
routeMapDB: mainflux.Env(envRouteMapDB, defRouteMapDB),
|
||||
httpPort: mainflux.Env(envHTTPPort, defHTTPPort),
|
||||
loraMsgURL: mainflux.Env(envLoraMsgURL, defLoraMsgURL),
|
||||
natsURL: mainflux.Env(envNatsURL, defNatsURL),
|
||||
logLevel: mainflux.Env(envLogLevel, defLogLevel),
|
||||
esURL: mainflux.Env(envESURL, defESURL),
|
||||
esPass: mainflux.Env(envESPass, defESPass),
|
||||
esDB: mainflux.Env(envESDB, defESDB),
|
||||
esConsumerName: mainflux.Env(envESConsumerName, defESConsumerName),
|
||||
routeMapURL: mainflux.Env(envRouteMapURL, defRouteMapURL),
|
||||
routeMapPass: mainflux.Env(envRouteMapPass, defRouteMapPass),
|
||||
routeMapDB: mainflux.Env(envRouteMapDB, defRouteMapDB),
|
||||
}
|
||||
}
|
||||
|
||||
@ -207,12 +207,12 @@ func subscribeToThingsES(svc lora.Service, client *r.Client, consumer string, lo
|
||||
eventStore := redis.NewEventStore(svc, client, consumer, logger)
|
||||
logger.Info("Subscribed to Redis Event Store")
|
||||
if err := eventStore.Subscribe("mainflux.things"); err != nil {
|
||||
logger.Warn(fmt.Sprintf("Lora-adapter service failed to subscribe to event sourcing: %s", err))
|
||||
logger.Warn(fmt.Sprintf("Lora-adapter service failed to subscribe to Redis event source: %s", err))
|
||||
}
|
||||
}
|
||||
|
||||
func newRouteMapRepositoy(client *r.Client, prefix string, logger logger.Logger) lora.RouteMapRepository {
|
||||
logger.Info(fmt.Sprintf("Connected to %s Redis Route map", prefix))
|
||||
logger.Info(fmt.Sprintf("Connected to %s Redis Route-map", prefix))
|
||||
return redis.NewRouteMapRepository(client, prefix)
|
||||
}
|
||||
|
||||
|
@ -41,12 +41,13 @@ const (
|
||||
defESURL = "localhost:6379"
|
||||
defESPass = ""
|
||||
defESDB = "0"
|
||||
defInstanceName = "opcua"
|
||||
defESConsumerName = "opcua"
|
||||
defRouteMapURL = "localhost:6379"
|
||||
defRouteMapPass = ""
|
||||
defRouteMapDB = "0"
|
||||
|
||||
envHTTPPort = "MF_OPCUA_ADAPTER_HTTP_PORT"
|
||||
envLogLevel = "MF_OPCUA_ADAPTER_LOG_LEVEL"
|
||||
envOPCServerURI = "MF_OPCUA_ADAPTER_SERVER_URI"
|
||||
envOPCNodeNamespace = "MF_OPCUA_ADAPTER_NODE_NAMESPACE"
|
||||
envOPCNodeIdentifier = "MF_OPCUA_ADAPTER_NODE_IDENTIFIER"
|
||||
@ -55,11 +56,10 @@ const (
|
||||
envOPCCertFile = "MF_OPCUA_ADAPTER_CERT_FILE"
|
||||
envOPCKeyFile = "MF_OPCUA_ADAPTER_KEY_FILE"
|
||||
envNatsURL = "MF_NATS_URL"
|
||||
envLogLevel = "MF_LORA_ADAPTER_LOG_LEVEL"
|
||||
envESURL = "MF_THINGS_ES_URL"
|
||||
envESPass = "MF_THINGS_ES_PASS"
|
||||
envESDB = "MF_THINGS_ES_DB"
|
||||
envInstanceName = "MF_OPCUA_ADAPTER_ROUTE_MAP_NAME"
|
||||
envESConsumerName = "MF_OPCUA_ADAPTER_EVENT_CONSUMER"
|
||||
envRouteMapURL = "MF_OPCUA_ADAPTER_ROUTE_MAP_URL"
|
||||
envRouteMapPass = "MF_OPCUA_ADAPTER_ROUTE_MAP_PASS"
|
||||
envRouteMapDB = "MF_OPCUA_ADAPTER_ROUTE_MAP_DB"
|
||||
@ -69,17 +69,17 @@ const (
|
||||
)
|
||||
|
||||
type config struct {
|
||||
httpPort string
|
||||
opcConfig opcua.Config
|
||||
natsURL string
|
||||
logLevel string
|
||||
esURL string
|
||||
esPass string
|
||||
esDB string
|
||||
instanceName string
|
||||
routeMapURL string
|
||||
routeMapPass string
|
||||
routeMapDB string
|
||||
httpPort string
|
||||
opcConfig opcua.Config
|
||||
natsURL string
|
||||
logLevel string
|
||||
esURL string
|
||||
esPass string
|
||||
esDB string
|
||||
esConsumerName string
|
||||
routeMapURL string
|
||||
routeMapPass string
|
||||
routeMapDB string
|
||||
}
|
||||
|
||||
func main() {
|
||||
@ -123,7 +123,7 @@ func main() {
|
||||
)
|
||||
|
||||
go subscribeToOpcServer(svc, cfg.opcConfig, logger)
|
||||
go subscribeToThingsES(svc, esConn, cfg.instanceName, logger)
|
||||
go subscribeToThingsES(svc, esConn, cfg.esConsumerName, logger)
|
||||
|
||||
errs := make(chan error, 2)
|
||||
|
||||
@ -150,17 +150,17 @@ func loadConfig() config {
|
||||
KeyFile: mainflux.Env(envOPCKeyFile, defOPCKeyFile),
|
||||
}
|
||||
return config{
|
||||
httpPort: mainflux.Env(envHTTPPort, defHTTPPort),
|
||||
opcConfig: oc,
|
||||
natsURL: mainflux.Env(envNatsURL, defNatsURL),
|
||||
logLevel: mainflux.Env(envLogLevel, defLogLevel),
|
||||
esURL: mainflux.Env(envESURL, defESURL),
|
||||
esPass: mainflux.Env(envESPass, defESPass),
|
||||
esDB: mainflux.Env(envESDB, defESDB),
|
||||
instanceName: mainflux.Env(envInstanceName, defInstanceName),
|
||||
routeMapURL: mainflux.Env(envRouteMapURL, defRouteMapURL),
|
||||
routeMapPass: mainflux.Env(envRouteMapPass, defRouteMapPass),
|
||||
routeMapDB: mainflux.Env(envRouteMapDB, defRouteMapDB),
|
||||
httpPort: mainflux.Env(envHTTPPort, defHTTPPort),
|
||||
opcConfig: oc,
|
||||
natsURL: mainflux.Env(envNatsURL, defNatsURL),
|
||||
logLevel: mainflux.Env(envLogLevel, defLogLevel),
|
||||
esURL: mainflux.Env(envESURL, defESURL),
|
||||
esPass: mainflux.Env(envESPass, defESPass),
|
||||
esDB: mainflux.Env(envESDB, defESDB),
|
||||
esConsumerName: mainflux.Env(envESConsumerName, defESConsumerName),
|
||||
routeMapURL: mainflux.Env(envRouteMapURL, defRouteMapURL),
|
||||
routeMapPass: mainflux.Env(envRouteMapPass, defRouteMapPass),
|
||||
routeMapDB: mainflux.Env(envRouteMapDB, defRouteMapDB),
|
||||
}
|
||||
}
|
||||
|
||||
@ -205,7 +205,7 @@ func subscribeToOpcServer(svc opcua.Service, cfg opcua.Config, logger logger.Log
|
||||
func subscribeToThingsES(svc opcua.Service, client *r.Client, prefix string, logger logger.Logger) {
|
||||
eventStore := redis.NewEventStore(svc, client, prefix, logger)
|
||||
if err := eventStore.Subscribe("mainflux.things"); err != nil {
|
||||
logger.Warn(fmt.Sprintf("Failed to subscribe to Redis event sourcing: %s", err))
|
||||
logger.Warn(fmt.Sprintf("Failed to subscribe to Redis event source: %s", err))
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -26,7 +26,7 @@ services:
|
||||
environment:
|
||||
MF_LORA_ADAPTER_LOG_LEVEL: ${MF_LORA_ADAPTER_LOG_LEVEL}
|
||||
MF_THINGS_ES_URL: es-redis:${MF_REDIS_TCP_PORT}
|
||||
MF_LORA_ADAPTER_ROUTEMAP_URL: lora-redis:${MF_REDIS_TCP_PORT}
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_URL: lora-redis:${MF_REDIS_TCP_PORT}
|
||||
MF_LORA_ADAPTER_MESSAGES_URL: ${MF_LORA_ADAPTER_MESSAGES_URL}
|
||||
MF_LORA_ADAPTER_HTTP_PORT: ${MF_LORA_ADAPTER_HTTP_PORT}
|
||||
MF_NATS_URL: ${MF_NATS_URL}
|
||||
|
@ -40,7 +40,7 @@ services:
|
||||
MF_THINGS_ES_URL: es-redis:${MF_REDIS_TCP_PORT}
|
||||
MF_THINGS_ES_PASS: ${MF_THINGS_ES_PASS}
|
||||
MF_THINGS_ES_DB: ${MF_THINGS_ES_DB}
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_NAME: [OPC-UA adapter instance name]
|
||||
MF_OPCUA_ADAPTER_EVENT_CONSUMER: ${MF_OPCUA_ADAPTER_EVENT_CONSUMER}
|
||||
ports:
|
||||
- ${MF_OPCUA_ADAPTER_HTTP_PORT}:${MF_OPCUA_ADAPTER_HTTP_PORT}
|
||||
networks:
|
||||
|
@ -11,19 +11,19 @@ The service is configured using the environment variables presented in the
|
||||
following table. Note that any unset variables will be replaced with their
|
||||
default values.
|
||||
|
||||
| Variable | Description | Default |
|
||||
|----------------------------------|---------------------------------------|-----------------------|
|
||||
| MF_LORA_ADAPTER_HTTP_PORT | Service HTTP port | 8180 |
|
||||
| MF_LORA_ADAPTER_LOG_LEVEL | Log level for the Lora Adapter | error |
|
||||
| MF_NATS_URL | NATS instance URL | nats://localhost:4222 |
|
||||
| MF_LORA_ADAPTER_MESSAGES_URL | LoRa Server mqtt broker URL | tcp://localhost:1883 |
|
||||
| MF_LORA_ADAPTER_ROUTEMAP_URL | Routemap database URL | localhost:6379 |
|
||||
| MF_LORA_ADAPTER_ROUTEMAP_PASS | Routemap database password | |
|
||||
| MF_LORA_ADAPTER_ROUTEMAP_DB | Routemap instance that should be used | 0 |
|
||||
| MF_THINGS_ES_URL | Things service event store URL | localhost:6379 |
|
||||
| MF_THINGS_ES_PASS | Things service event store password | |
|
||||
| MF_THINGS_ES_DB | Things service event store db | 0 |
|
||||
| MF_LORA_ADAPTER_INSTANCE_NAME | LoRa adapter instance name | lora |
|
||||
| Variable | Description | Default |
|
||||
|----------------------------------|--------------------------------------|-----------------------|
|
||||
| MF_LORA_ADAPTER_HTTP_PORT | Service HTTP port | 8180 |
|
||||
| MF_LORA_ADAPTER_LOG_LEVEL | Service Log level | error |
|
||||
| MF_NATS_URL | NATS instance URL | nats://localhost:4222 |
|
||||
| MF_LORA_ADAPTER_MESSAGES_URL | LoRa Server MQTT broker URL | tcp://localhost:1883 |
|
||||
| MF_LORA_ADAPTER_ROUTE_MAP_URL | Route-map database URL | localhost:6379 |
|
||||
| MF_LORA_ADAPTER_ROUTE_MAP_PASS | Route-map database password | |
|
||||
| MF_LORA_ADAPTER_ROUTE_MAP_DB | Route-map instance | 0 |
|
||||
| MF_THINGS_ES_URL | Things service event source URL | localhost:6379 |
|
||||
| MF_THINGS_ES_PASS | Things service event source password | |
|
||||
| MF_THINGS_ES_DB | Things service event source DB | 0 |
|
||||
| MF_LORA_ADAPTER_EVENT_CONSUMER | Service event consumer name | lora |
|
||||
|
||||
## Deployment
|
||||
|
||||
@ -37,16 +37,16 @@ services:
|
||||
image: mainflux/lora:[version]
|
||||
container_name: [instance name]
|
||||
environment:
|
||||
MF_LORA_ADAPTER_LOG_LEVEL: [Lora Adapter Log Level]
|
||||
MF_LORA_ADAPTER_LOG_LEVEL: [Service Log Level]
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_LORA_ADAPTER_MESSAGES_URL: [LoRa Server mqtt broker URL]
|
||||
MF_LORA_ADAPTER_ROUTEMAP_URL: [Lora adapter routemap URL]
|
||||
MF_LORA_ADAPTER_ROUTEMAP_PASS: [Lora adapter routemap password]
|
||||
MF_LORA_ADAPTER_ROUTEMAP_DB: [Lora adapter routemap instance]
|
||||
MF_THINGS_ES_URL: [Things service event store URL]
|
||||
MF_THINGS_ES_PASS: [Things service event store password]
|
||||
MF_THINGS_ES_DB: [Things service event store db]
|
||||
MF_LORA_ADAPTER_INSTANCE_NAME: [LoRa adapter instance name]
|
||||
MF_LORA_ADAPTER_MESSAGES_URL: [LoRa Server MQTT broker URL]
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_URL: [Route-map database URL]
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_PASS: [Route-map database password]
|
||||
MF_LORA_ADAPTER_ROUTE_MAP_DB: [Route-map instance]
|
||||
MF_THINGS_ES_URL: [Things event source URL]
|
||||
MF_THINGS_ES_PASS: [Things event source password]
|
||||
MF_THINGS_ES_DB: [Things event source DB instance]
|
||||
MF_LORA_ADAPTER_EVENT_CONSUMER: [Service event consumer name]
|
||||
```
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
@ -64,7 +64,7 @@ make lora
|
||||
make install
|
||||
|
||||
# set the environment variables and run the service
|
||||
MF_LORA_ADAPTER_LOG_LEVEL=[Lora Adapter Log Level] MF_NATS_URL=[NATS instance URL] MF_LORA_ADAPTER_MESSAGES_URL=[LoRa Server mqtt broker URL] MF_LORA_ADAPTER_ROUTEMAP_URL=[Lora adapter routemap URL] MF_LORA_ADAPTER_ROUTEMAP_PASS=[Lora adapter routemap password] MF_LORA_ADAPTER_ROUTEMAP_DB=[Lora adapter routemap instance] MF_THINGS_ES_URL=[Things service event store URL] MF_THINGS_ES_PASS=[Things service event store password] MF_THINGS_ES_DB=[Things service event store db] MF_LORA_ADAPTER_INSTANCE_NAME=[LoRa adapter instance name] $GOBIN/mainflux-lora
|
||||
MF_LORA_ADAPTER_LOG_LEVEL=[Lora Adapter Log Level] MF_NATS_URL=[NATS instance URL] MF_LORA_ADAPTER_MESSAGES_URL=[LoRa Server mqtt broker URL] MF_LORA_ADAPTER_ROUTE_MAP_URL=[Lora adapter routemap URL] MF_LORA_ADAPTER_ROUTE_MAP_PASS=[Lora adapter routemap password] MF_LORA_ADAPTER_ROUTE_MAP_DB=[Lora adapter routemap instance] MF_THINGS_ES_URL=[Things service event source URL] MF_THINGS_ES_PASS=[Things service event source password] MF_THINGS_ES_DB=[Things service event source password] MF_OPCUA_ADAPTER_EVENT_CONSUMER=[LoRa adapter instance name] $GOBIN/mainflux-lora
|
||||
```
|
||||
|
||||
### Using docker-compose
|
||||
|
@ -11,25 +11,25 @@ The service is configured using the environment variables presented in the
|
||||
following table. Note that any unset variables will be replaced with their
|
||||
default values.
|
||||
|
||||
| Variable | Description | Default |
|
||||
|----------------------------------|----------------------------------------|----------------------------|
|
||||
| MF_OPCUA_ADAPTER_HTTP_PORT | Service HTTP port | 8188 |
|
||||
| MF_OPCUA_ADAPTER_LOG_LEVEL | Log level for the OPC-UA Adapter | error |
|
||||
| MF_NATS_URL | NATS instance URL | nats://localhost:4222 |
|
||||
| MF_OPCUA_ADAPTER_SERVER_URI | OPC-UA Server subscription URI | opc.tcp://opcua.rocks:4840 |
|
||||
| MF_OPCUA_ADAPTER_NODE_NAMESPACE | OPC-UA Server Node Namespace | 0 |
|
||||
| MF_OPCUA_ADAPTER_NODE_IDENTIFIER | OPC-UA Server Node Identifier | 2256 |
|
||||
| MF_OPCUA_ADAPTER_POLICY | OPC-UA Server Policy | |
|
||||
| MF_OPCUA_ADAPTER_MODE | OPC-UA Server Mode | |
|
||||
| MF_OPCUA_ADAPTER_CERT_FILE | OPC-UA Server Certificate file | |
|
||||
| MF_OPCUA_ADAPTER_KEY_FILE | OPC-UA Server Key file | |
|
||||
| MF_OPCUA_ADAPTER_ROUTE_MAP_URL | Route-map database URL | localhost:6379 |
|
||||
| MF_OPCUA_ADAPTER_ROUTE_MAP_PASS | Route-map database password | |
|
||||
| MF_OPCUA_ADAPTER_ROUTE_MAP_DB | Route-map instance that should be used | 0 |
|
||||
| MF_THINGS_ES_URL | Things service event store URL | localhost:6379 |
|
||||
| MF_THINGS_ES_PASS | Things service event store password | |
|
||||
| MF_THINGS_ES_DB | Things service event store db | 0 |
|
||||
| MF_OPCUA_ADAPTER_ROUTE_MAP_NAME | OPC-UA adapter instance name | opcua |
|
||||
| Variable | Description | Default |
|
||||
|----------------------------------|--------------------------------------|----------------------------|
|
||||
| MF_OPCUA_ADAPTER_HTTP_PORT | Service HTTP port | 8188 |
|
||||
| MF_OPCUA_ADAPTER_LOG_LEVEL | Service Log level | error |
|
||||
| MF_NATS_URL | NATS instance URL | nats://localhost:4222 |
|
||||
| MF_OPCUA_ADAPTER_SERVER_URI | OPC-UA Server subscription URI | opc.tcp://opcua.rocks:4840 |
|
||||
| MF_OPCUA_ADAPTER_NODE_NAMESPACE | OPC-UA Server Node Namespace | 0 |
|
||||
| MF_OPCUA_ADAPTER_NODE_IDENTIFIER | OPC-UA Server Node Identifier | 2256 |
|
||||
| MF_OPCUA_ADAPTER_POLICY | OPC-UA Server Policy | |
|
||||
| MF_OPCUA_ADAPTER_MODE | OPC-UA Server Mode | |
|
||||
| MF_OPCUA_ADAPTER_CERT_FILE | OPC-UA Server Certificate file | |
|
||||
| MF_OPCUA_ADAPTER_KEY_FILE | OPC-UA Server Key file | |
|
||||
| MF_OPCUA_ADAPTER_ROUTE_MAP_URL | Route-map database URL | localhost:6379 |
|
||||
| MF_OPCUA_ADAPTER_ROUTE_MAP_PASS | Route-map database password | |
|
||||
| MF_OPCUA_ADAPTER_ROUTE_MAP_DB | Route-map instance name | 0 |
|
||||
| MF_THINGS_ES_URL | Things service event source URL | localhost:6379 |
|
||||
| MF_THINGS_ES_PASS | Things service event source password | |
|
||||
| MF_THINGS_ES_DB | Things service event source DB | 0 |
|
||||
| MF_OPCUA_ADAPTER_EVENT_CONSUMER | Service event consumer name | opcua |
|
||||
|
||||
## Deployment
|
||||
|
||||
@ -44,7 +44,7 @@ services:
|
||||
container_name: [instance name]
|
||||
environment:
|
||||
MF_OPCUA_ADAPTER_HTTP_PORT: [Service HTTP port]
|
||||
MF_OPCUA_ADAPTER_LOG_LEVEL: [OPC-UA Adapter Log Level]
|
||||
MF_OPCUA_ADAPTER_LOG_LEVEL: [Service Log Level]
|
||||
MF_NATS_URL: [NATS instance URL]
|
||||
MF_OPCUA_ADAPTER_SERVER_URI: [OPC-UA Server subscription URI]
|
||||
MF_OPCUA_ADAPTER_NODE_NAMESPACE: [OPC-UA Server Node Namespace]
|
||||
@ -55,11 +55,11 @@ services:
|
||||
MF_OPCUA_ADAPTER_KEY_FILE: [OPC-UA Server Key file]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_URL: [Route-map database URL]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_PASS: [Route-map database password]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_DB: [Route-map instance that should be used]
|
||||
MF_THINGS_ES_URL: [Things service event store URL]
|
||||
MF_THINGS_ES_PASS: [Things service event store password]
|
||||
MF_THINGS_ES_DB: [Things service event store db]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_NAME: [OPC-UA adapter instance name]
|
||||
MF_OPCUA_ADAPTER_ROUTE_MAP_DB: [Route-map instance name]
|
||||
MF_THINGS_ES_URL: [Things event source URL]
|
||||
MF_THINGS_ES_PASS: [Things event source password]
|
||||
MF_THINGS_ES_DB: [Things event source DB instance]
|
||||
MF_OPCUA_ADAPTER_EVENT_CONSUMER: [Service event consumer name]
|
||||
```
|
||||
|
||||
To start the service outside of the container, execute the following shell script:
|
||||
@ -77,7 +77,7 @@ make opcua
|
||||
make install
|
||||
|
||||
# set the environment variables and run the service
|
||||
MF_OPCUA_ADAPTER_HTTP_PORT=[Service HTTP port] MF_OPCUA_ADAPTER_LOG_LEVEL=[OPC-UA Adapter Log Level] MF_NATS_URL=[NATS instance URL] MF_OPCUA_ADAPTER_SERVER_URI=[OPC-UA Server subscription URI] MF_OPCUA_ADAPTER_NODE_NAMESPACE=[OPC-UA Server Node Namespace] MF_OPCUA_ADAPTER_NODE_IDENTIFIER=[OPC-UA Server Node Identifier] MF_OPCUA_ADAPTER_POLICY=[OPC-UA Server Policy] MF_OPCUA_ADAPTER_MODE=[OPC-UA Server Mode] MF_OPCUA_ADAPTER_CERT_FILE=[OPC-UA Server Certificate file] MF_OPCUA_ADAPTER_KEY_FILE=[OPC-UA Server Key file] MF_OPCUA_ADAPTER_ROUTE_MAP_URL=[Route-map database URL] MF_OPCUA_ADAPTER_ROUTE_MAP_PASS=[Route-map database password] MF_OPCUA_ADAPTER_ROUTE_MAP_DB=[Route-map instance that should be used] MF_THINGS_ES_URL=[Things service event store URL] MF_THINGS_ES_PASS=[Things service event store password] MF_THINGS_ES_DB=[Things service event store db] MF_OPCUA_ADAPTER_ROUTE_MAP_NAME=[OPC-UA adapter instance name] $GOBIN/mainflux-opcua
|
||||
MF_OPCUA_ADAPTER_HTTP_PORT=[Service HTTP port] MF_OPCUA_ADAPTER_LOG_LEVEL=[OPC-UA Adapter Log Level] MF_NATS_URL=[NATS instance URL] MF_OPCUA_ADAPTER_SERVER_URI=[OPC-UA Server subscription URI] MF_OPCUA_ADAPTER_NODE_NAMESPACE=[OPC-UA Server Node Namespace] MF_OPCUA_ADAPTER_NODE_IDENTIFIER=[OPC-UA Server Node Identifier] MF_OPCUA_ADAPTER_POLICY=[OPC-UA Server Policy] MF_OPCUA_ADAPTER_MODE=[OPC-UA Server Mode] MF_OPCUA_ADAPTER_CERT_FILE=[OPC-UA Server Certificate file] MF_OPCUA_ADAPTER_KEY_FILE=[OPC-UA Server Key file] MF_OPCUA_ADAPTER_ROUTE_MAP_URL=[Route-map database URL] MF_OPCUA_ADAPTER_ROUTE_MAP_PASS=[Route-map database password] MF_OPCUA_ADAPTER_ROUTE_MAP_DB=[Route-map instance name] MF_THINGS_ES_URL=[Things service event source URL] MF_THINGS_ES_PASS=[Things service event source password] MF_THINGS_ES_DB=[Things service event source password] MF_OPCUA_ADAPTER_EVENT_CONSUMER=[OPC-UA adapter instance name] $GOBIN/mainflux-opcua
|
||||
```
|
||||
|
||||
### Using docker-compose
|
||||
|
@ -32,10 +32,10 @@ default values.
|
||||
| MF_THINGS_CA_CERTS | Path to trusted CAs in PEM format | |
|
||||
| MF_THINGS_CACHE_URL | Cache database URL | localhost:6379 |
|
||||
| MF_THINGS_CACHE_PASS | Cache database password | |
|
||||
| MF_THINGS_CACHE_DB | Cache instance that should be used | 0 |
|
||||
| MF_THINGS_CACHE_DB | Cache instance name | 0 |
|
||||
| MF_THINGS_ES_URL | Event store URL | localhost:6379 |
|
||||
| MF_THINGS_ES_PASS | Event store password | |
|
||||
| MF_THINGS_ES_DB | Event store instance that should be used | 0 |
|
||||
| MF_THINGS_ES_DB | Event store instance name | 0 |
|
||||
| MF_THINGS_HTTP_PORT | Things service HTTP port | 8180 |
|
||||
| MF_THINGS_AUTH_HTTP_PORT | Things service auth HTTP port | 8989 |
|
||||
| MF_THINGS_AUTH_GRPC_PORT | Things service auth gRPC port | 8181 |
|
||||
@ -80,7 +80,7 @@ services:
|
||||
MF_THINGS_CACHE_DB: [Cache instance that should be used]
|
||||
MF_THINGS_ES_URL: [Event store URL]
|
||||
MF_THINGS_ES_PASS: [Event store password]
|
||||
MF_THINGS_ES_DB: [Event store instance that should be used]
|
||||
MF_THINGS_ES_DB: [Event store instance name]
|
||||
MF_THINGS_HTTP_PORT: [Service HTTP port]
|
||||
MF_THINGS_AUTH_HTTP_PORT: [Service auth HTTP port]
|
||||
MF_THINGS_AUTH_GRPC_PORT: [Service auth gRPC port]
|
||||
@ -109,7 +109,7 @@ make things
|
||||
make install
|
||||
|
||||
# set the environment variables and run the service
|
||||
MF_THINGS_LOG_LEVEL=[Things log level] MF_THINGS_DB_HOST=[Database host address] MF_THINGS_DB_PORT=[Database host port] MF_THINGS_DB_USER=[Database user] MF_THINGS_DB_PASS=[Database password] MF_THINGS_DB=[Name of the database used by the service] MF_THINGS_DB_SSL_MODE=[SSL mode to connect to the database with] MF_THINGS_DB_SSL_CERT=[Path to the PEM encoded certificate file] MF_THINGS_DB_SSL_KEY=[Path to the PEM encoded key file] MF_THINGS_DB_SSL_ROOT_CERT=[Path to the PEM encoded root certificate file] MF_HTTP_ADAPTER_CA_CERTS=[Path to trusted CAs in PEM format] MF_THINGS_CACHE_URL=[Cache database URL] MF_THINGS_CACHE_PASS=[Cache database password] MF_THINGS_CACHE_DB=[Cache instance that should be used] MF_THINGS_ES_URL=[Event store URL] MF_THINGS_ES_PASS=[Event store password] MF_THINGS_ES_DB=[Event store instance that should be used] MF_THINGS_HTTP_PORT=[Service HTTP port] MF_THINGS_AUTH_HTTP_PORT=[Service auth HTTP port] MF_THINGS_AUTH_GRPC_PORT=[Service auth gRPC port] MF_USERS_URL=[Users service URL] MF_THINGS_SERVER_CERT=[Path to server certificate] MF_THINGS_SERVER_KEY=[Path to server key] MF_THINGS_SINGLE_USER_EMAIL=[User email for single user mode (no gRPC communication with users)] MF_THINGS_SINGLE_USER_TOKEN=[User token for single user mode that should be passed in auth header] MF_JAEGER_URL=[Jaeger server URL] MF_THINGS_USERS_TIMEOUT=[Users gRPC request timeout in seconds] $GOBIN/mainflux-things
|
||||
MF_THINGS_LOG_LEVEL=[Things log level] MF_THINGS_DB_HOST=[Database host address] MF_THINGS_DB_PORT=[Database host port] MF_THINGS_DB_USER=[Database user] MF_THINGS_DB_PASS=[Database password] MF_THINGS_DB=[Name of the database used by the service] MF_THINGS_DB_SSL_MODE=[SSL mode to connect to the database with] MF_THINGS_DB_SSL_CERT=[Path to the PEM encoded certificate file] MF_THINGS_DB_SSL_KEY=[Path to the PEM encoded key file] MF_THINGS_DB_SSL_ROOT_CERT=[Path to the PEM encoded root certificate file] MF_HTTP_ADAPTER_CA_CERTS=[Path to trusted CAs in PEM format] MF_THINGS_CACHE_URL=[Cache database URL] MF_THINGS_CACHE_PASS=[Cache database password] MF_THINGS_CACHE_DB=[Cache instance name] MF_THINGS_ES_URL=[Event store URL] MF_THINGS_ES_PASS=[Event store password] MF_THINGS_ES_DB=[Event store instance name] MF_THINGS_HTTP_PORT=[Service HTTP port] MF_THINGS_AUTH_HTTP_PORT=[Service auth HTTP port] MF_THINGS_AUTH_GRPC_PORT=[Service auth gRPC port] MF_USERS_URL=[Users service URL] MF_THINGS_SERVER_CERT=[Path to server certificate] MF_THINGS_SERVER_KEY=[Path to server key] MF_THINGS_SINGLE_USER_EMAIL=[User email for single user mode (no gRPC communication with users)] MF_THINGS_SINGLE_USER_TOKEN=[User token for single user mode that should be passed in auth header] MF_JAEGER_URL=[Jaeger server URL] MF_THINGS_USERS_TIMEOUT=[Users gRPC request timeout in seconds] $GOBIN/mainflux-things
|
||||
```
|
||||
|
||||
Setting `MF_THINGS_CA_CERTS` expects a file in PEM format of trusted CAs. This will enable TLS against the Users gRPC endpoint trusting only those CAs that are provided.
|
||||
|
Loading…
x
Reference in New Issue
Block a user