If you call 911 during a fire but you don't know the address of your own location, firefighters can't help. Knowing the location of each component in your system is equally important during an incident--that's why we provide options for infrastructure management.
Within FireHydrant, your infrastructure is divided into three main categories:
By detailing different functionalities, services, and environments, you create a way to track your digital properties. When these properties are well-catalogued, you can quickly figure out where an incident is occurring.
Note: You can also access your infrastructure programmatically using FireHydrant's API.
A functionality (function) is a programming construct that performs a specific task. Functionalities let you associate backend services with the features your end users interact with.
To create and manage functionalities:
- In the left-hand panel of FireHydrant, click Integrations > Functionalities > New. (Or go to https://app.firehydrant.io/functionalities.)
- From here, add a functionality by filling out the functionality Name (required) and Description (optional).
- Link any Services within your system that you may have included with the given functionality. (Alternately, you can skip linking services here, and instead link the functionality when you create a service).
A service is a collection of functions that performs a targeted business operation. A service can be a microservice, a mono-repository, or a library that you maintain.
To create and manage services:
- In the left-hand panel of FireHydrant, click Integrations > Services > New. (Or go to https://app.firehydrant.io/services.)
- From here, add a service by filling out the service Name (required) and Description (optional).
- Link any Functionalities you may have included with a given service.
Linking functionalities will help you get a better understanding of which services powers which functionalities.
- Add Labels (key-value pairs) to support filtering.
Other tools available for importing services
- Opsgenie or PagerDuty
- Terraform (can provision team ownership of services as well)
Environments let you break up your app by region (for example, "US East 1") or development stage (for example, "Production").
To create and manage environments:
- In the left-hand panel of FireHydrant, click Integrations > Environments > New. (Or go to https://app.firehydrant.io/environments.)
- From here, add an environment by filling out the service Name (required) and Description (optional).
Note: By default, FireHydrant pre-defines stage-based environments (production, staging, and development).