A system for managing fault codes associated with a vehicle, the system comprising: a memory storing a plurality of parameters and a plurality of fault codes, wherein each parameter is associated with a fault code and wherein a particular fault code is associated with at least one set of parameters comprising a threshold value defining a number of times the particular fault code is generated during a predefined time period the vehicle was in operation and a consecutive value providing a number of consecutive time periods; and one or more computer processors configured to: receive fault code information retrieved from the vehicle, the fault code information comprising one or more of said plurality of fault codes, the one or more fault codes being generated during the predefined time period the vehicle was in operation and including the particular fault code; retrieve parameters stored in the memory associated with the one or more fault codes; analyze the fault code information to identify each of the one or more fault codes signaling failure or potential failure of one or more components or sub-systems of the vehicle based at least in part on the parameters associated with the one or more fault codes in the fault code information; and set a state for each identified fault code based at least in part on the parameters associated with each identified fault code, the state indicating a level of action associated with the identified fault code, wherein the state for the particular fault code is set in response to the fault code information showing that the particular fault code was generated a number of times meeting or exceeding the threshold value during a number of consecutive predefined time periods meeting or exceeding the consecutive value, wherein the state comprises one of a caution state indicating the one or more components or sub-systems of the vehicle should be monitored, a critical state indicating the one or more components or sub-systems of the vehicle should be repaired, or an environmental state indicating the failure or potential failure of the one or more components or sub-systems of the vehicle affects one or more environmental conditions. a memory storing a plurality of parameters and a plurality of fault codes, wherein each parameter is associated with a fault code and wherein a particular fault code is associated with at least one set of parameters comprising a threshold value defining a number of times the particular fault code is generated during a predefined time period the vehicle was in operation and a consecutive value providing a number of consecutive time periods; and one or more computer processors configured to: receive fault code information retrieved from the vehicle, the fault code information comprising one or more of said plurality of fault codes, the one or more fault codes being generated during the predefined time period the vehicle was in operation and including the particular fault code; retrieve parameters stored in the memory associated with the one or more fault codes; analyze the fault code information to identify each of the one or more fault codes signaling failure or potential failure of one or more components or sub-systems of the vehicle based at least in part on the parameters associated with the one or more fault codes in the fault code information; and set a state for each identified fault code based at least in part on the parameters associated with each identified fault code, the state indicating a level of action associated with the identified fault code, wherein the state for the particular fault code is set in response to the fault code information showing that the particular fault code was generated a number of times meeting or exceeding the threshold value during a number of consecutive predefined time periods meeting or exceeding the consecutive value, receive fault code information retrieved from the vehicle, the fault code information comprising one or more of said plurality of fault codes, the one or more fault codes being generated during the predefined time period the vehicle was in operation and including the particular fault code; retrieve parameters stored in the memory associated with the one or more fault codes; analyze the fault code information to identify each of the one or more fault codes signaling failure or potential failure of one or more components or sub-systems of the vehicle based at least in part on the parameters associated with the one or more fault codes in the fault code information; and set a state for each identified fault code based at least in part on the parameters associated with each identified fault code, the state indicating a level of action associated with the identified fault code, wherein the state for the particular fault code is set in response to the fault code information showing that the particular fault code was generated a number of times meeting or exceeding the threshold value during a number of consecutive predefined time periods meeting or exceeding the consecutive value, wherein the state comprises one of a caution state indicating the one or more components or sub-systems of the vehicle should be monitored, a critical state indicating the one or more components or sub-systems of the vehicle should be repaired, or an environmental state indicating the failure or potential failure of the one or more components or sub-systems of the vehicle affects one or more environmental conditions.