Web service for aggregation and analysis of your web app traffic.
Hub is the component that acts as a C&C application (command and control) for Traffic Manager.
To install the service globally with npm use the following command in your terminal.
npm install traffic-manager-hub -g
After successful installation you will be able to start Traffic Manager Hub
with tmhub
command in your terminal.
This service uses these env vars for configuration:
MONGO_URL
(optional)MONGO_DBNAME
(optional)PORT
(default:4000
)BASE_URL
(default:http://localhost:4000
)
If MONGO_URL and MONGO_DBNAME are not specified a local SQLite will be used as fallback.
Example
MONGO_URL=mongodb://localhost:27017 MONGO_DBNAME=tmhub PORT=8000 BASE_URL=http://tmhub.example.com/ tmhub
To integrate with Traffic Manager Hub you'll need to register your site in the Web UI to obtain Site ID and Site Secret.
Follow the instructions in traffic-manager-agent package to install Traffic Manager Agent in your app.
Provide URL of your TM Hub instance, Site ID and Site Secret in configuration.
Your application is now being monitored by Traffic Manager.
You can integrate Traffic Manager Hub with any application.
Traffic Manager Hub exposes a simple REST API.
All you have to do is to send JSON payload containing requests/events
to /api/v1/:siteId/submitSamples
.
The payload should look like this:
{
"siteSecret": "zN2EY69fmy303MUEs7ZkQv8sqeuFjFEp",
"samples": [
{
"ip": "89.238.154.238",
"url": "http://example.com/wp-login.php",
"userAgent": "SampleUA/1.0.0",
"timestamp": "1552604831677"
},
{
"ip": "89.238.154.238",
"url": "http://example.com/cpanel",
"userAgent": "SampleUA/1.0.0",
"timestamp": "1552604831681"
}
]
}
Clone the repository and install the dependencies (npm install
).
Once that's done you can start the application with node main.js
or npm run start
.