# StartupTracker class abstract

Represents a startup lifecycle monitor for JetLeaf-based applications.

This interface defines timing-related hooks that allow modules and tools to track the time it takes for the application to start and be ready.

It can be used to expose startup metrics, perform readiness checks, or log time durations at various points during the boot process.

### Example

    class JetLeafStartup extends Startup {
      final int _start = DateTime.now().millisecondsSinceEpoch;

      @override
      int getStartTime() => _start;

      @override
      int? getProcessUptime() => DateTime.now().millisecondsSinceEpoch - _start;

      @override
      String getAction() => 'JetLeaf started';
    }

Mixed-in types
  - EqualsAndHashCode
  - ToString

## Constructors

StartupTracker.new()

## Properties

hashCode → int
  The hash code for this object.
  no setter inherited
runtimeType → Type
  A representation of the runtime type of the object.
  no setter inherited

## Methods

equalizedProperties() → List<Object?>
  Mixin-style contract for value-based equality, `hashCode`, and `toString`.
  override
getAction() → String
  Returns a string representation of the startup action, such as `'ApplicationContext refreshed'` or `'JetLeaf ready'`.
getProcessUptime() → int?
  Returns the current process uptime in milliseconds since the application start time, or `null` if unsupported.
getReady() → Duration
  Returns the current time elapsed since the application began starting.
getStartTime() → int
  Returns the system timestamp (in milliseconds since epoch) at which the application startup began.
getTimeTakenToStarted() → Duration
  Returns the time it took to reach the `started()` state.
noSuchMethod(Invocation invocation) → dynamic
  Invoked when a nonexistent method or property is accessed.
  inherited
started() → Duration
  Marks the application as "started" and calculates the duration since `getStartTime()`.
toString() → String
  A string representation of this object.
  inherited
toStringOptions() → ToStringOptions
  override

## Operators

operator ==(Object other) → bool
  The equality operator.
  inherited

## Static Methods

create() → StartupTracker
  Creates a new instance of StartupTracker.