FAQs
Where is my Application Hosted on the network?
Once you have the software running, the user-interface will be hosted at the IP address of the machine hosting the Application on port 5172.
If you have TLS certs configured on your instance, http:// requests to port 5172 will be re-directed to https:// on port 5174.
Where is the configuration directory for the Application?
Linux
~/.config/daqastra
Windows
%appdata%\Roaming\TransAstra\DAQAstra\config
MacOS
~/Library/Application Support/com.TransAstra.DAQAstra
Configuration Directory Structure
.
├── .certs
├── .node-red
│ ├── flows.json # <- Your Node-RED flows
│ ├── flows_cred.json
│ ├── lib
│ ├── node_modules
│ ├── package-lock.json
│ ├── package.json
│ └── settings.js # <- Node-RED settings
├── database
│ ├── database.db # <- DAQAstra Appication Database
│ ├── database.db-shm
│ ├── database.db-wal
│ └── migrations
│ ├── 20240127_init.down.sql
│ ├── 20240127_init.up.sql
│ └── 20250502__add_gateway_ip_to_identifier_key.sql
├── firmware # <- DAQAstra firmware & configs built by the Application
│ ├── DefaultV4.2
│ │ └── v1
│ └── DefaultV4.3
│ └── v1
├── input # <- Used internally
├── logs # <- DAQAstra Application debug logs
│ └── gateway.ans
├── output # <- Used internally
├── rumqttd.toml # <- MQTT Broker Configuration
├── source # <- Source code libraries used for local firmware gen. and compilation.
│ ├── bsc
│ ├── bytes
│ ├── config-schema
│ ├── crypto-client
│ ├── done.txt
│ ├── firmwaregen
│ └── ser
├── default.json # <- DAQAstra App Configuration
└── telegraf.conf # <- Telegraf Configuration (data scraper)
DAQAstra Configuration File
{
"daqastra_dashboard":true,
"influxdb_dashboard":true,
"node_red_editor":true
}
-
daqastra_dashboard: Enables/Disables the DAQAstra UI (only valid for headless or lite applications) -
influxdb_dashboard: Enables/Disables InfluxDB webUI. API will still remain accessible. -
node_red_editor: Enables/Disables NodeRED editor, but leaves the NodeRED dashboard enabled. This makes the editting of NodeRED flows at runtime impossible.
How can I use HTTPS/TLS certificates on my Application Instance?
Stop the Application instance if it is running, and generate .pem files (key.pem and cert.pem) for your desired TLS certificate.
Place the key and certificate into your Application's configuration directory in the .certs folder. Restart the Application
instance and the UI and backend will be behind https:// and using the newly added certificate.
Note: Doing this will automatically put InfluxDB behind the same TLS certificates. However, Node-RED and Telegraf do not get the same treatement.
Node-RED TLS Setup
To have Node-RED use the TLS certificate, edit the settings file at {path/to/config/directory}/.node-red/settings.js and add the
following keys to the default configuration:
https: function () {
return {
key: require("fs").readFileSync("{path/to/config/directory}/.certs/key.pem"),
cert: require("fs").readFileSync("{path/to/config/directory}/.certs/cert.pem"),
};
},
httpsRefreshInterval: 12,
requireHttps: true,
Telegraf TLS Setup
Navigate to the config directory for Application and edit telegraf.conf. The section to change is shown below. Change the
host url to https:// and the tls_cert and tls_key to the local path to your key and certificate.
[[outputs.influxdb_v2]]
## The URLs of the InfluxDB cluster nodes.
urls = ["https://0.0.0.0:8086"]
## Token for authentication.
token = "***"
## Organization is the name of the organization you wish to write to; must exist.
organization = "Gateway"
## Destination bucket to write into.
bucket = "DAQAstra"
## Optional TLS Config for use on HTTP connections.
# tls_ca = "/etc/telegraf/ca.pem"
tls_cert = "{path/to/config/directory}/.certs/cert.pem"
tls_key = "{path/to/config/directory}/.certs/key.pem"
## Use TLS but skip chain & host verification
insecure_skip_verify = true