Forum Discussion
Mean Time Between Failure for an application
Hello Everyone,
I have a data model which contains fields such as:
Incident Title, Created on, Resolved on, Closed on whose sample list is represented below:
| Incident Title | Created on | Resolved on | Closed on |
| Application Down | Jan 1, 2025 | Jan 5, 2025 | Jan 7, 2025 |
| DB Issue | Jan 4, 2025 | Jan 5, 2025 | Jan 9, 2025 |
| API Issue | Jan 9, 2025 | Jan 10, 2025 | Jan 10,2025 |
Now, I would like to calculate the meantime between failure for this application. How could that be done?
Hi Jeyeline - you need to determine the average time between the resolution of one incident and the creation of the next incident.
create a calculated column for difference time
Time Between Failures =
DATEDIFF(
'Incidents'[Resolved on],
CALCULATE(
MIN('Incidents'[Created on]),
FILTER(
'Incidents',
'Incidents'[Created on] > EARLIER('Incidents'[Resolved on])
)
),
DAY
)Once you have the Time Between Failures column, create a measure to calculate the MTBF by averaging these time differences.
MTBF =
AVERAGE('Incidents'[Time Between Failures])Few reference links:
Maintenance KPI - Calculating MTBF & MDT (Mean Time Between Failures & Mean Downtime) in Power BI
Jeyeline See my article on Mean Time Between Failure (MTBF) which uses EARLIER: http://community.powerbi.com/t5/Community-Blog/Mean-Time-Between-Failure-MTBF-and-Power-BI/ba-p/339586.
The basic pattern is:
Column =
VAR __Current = [Value]
VAR __PreviousDate = MAXX(FILTER('Table','Table'[Date] < EARLIER('Table'[Date])),[Date])
VAR __Previous = MAXX(FILTER('Table',[Date]=__PreviousDate),[Value])
RETURN
( __Current - __Previous ) * 1.
2 Replies
- rajendraongole1Super User
Hi Jeyeline - you need to determine the average time between the resolution of one incident and the creation of the next incident.
create a calculated column for difference time
Time Between Failures =
DATEDIFF(
'Incidents'[Resolved on],
CALCULATE(
MIN('Incidents'[Created on]),
FILTER(
'Incidents',
'Incidents'[Created on] > EARLIER('Incidents'[Resolved on])
)
),
DAY
)Once you have the Time Between Failures column, create a measure to calculate the MTBF by averaging these time differences.
MTBF =
AVERAGE('Incidents'[Time Between Failures])Few reference links:
Maintenance KPI - Calculating MTBF & MDT (Mean Time Between Failures & Mean Downtime) in Power BI
- Greg_DecklerCommunity Champion
Jeyeline See my article on Mean Time Between Failure (MTBF) which uses EARLIER: http://community.powerbi.com/t5/Community-Blog/Mean-Time-Between-Failure-MTBF-and-Power-BI/ba-p/339586.
The basic pattern is:
Column =
VAR __Current = [Value]
VAR __PreviousDate = MAXX(FILTER('Table','Table'[Date] < EARLIER('Table'[Date])),[Date])
VAR __Previous = MAXX(FILTER('Table',[Date]=__PreviousDate),[Value])
RETURN
( __Current - __Previous ) * 1.