1. A system for managing remote devices, comprising: a server comprising one or more processors; at least one memory element storing, in a first data structure, a management information base (MIB) having a hierarchical tree comprising a plurality of object identifiers and a plurality of corresponding object values; a detection module executing on the one or more processors of the server that queries one or more devices using a networking protocol and receives, responsive to a query and from a device, a first object identifier and a first object value that corresponds to the first object identifier, the first object identifier varies from each of the plurality of object identifiers of the MIB due to a first error, and the first object value varies from each of the plurality of corresponding object values of the MIB due to a second error; the detection module generates, using a first pattern that matches the first object identifier and a second pattern that matches the first object value, an identification of the device; a collection module executing on the server that selects a collection template from a plurality of collection templates based on the identification of the device, the collection template indicating a subtree of the MIB and comprising a collection pattern configured to account for at least one of the first error that caused the first object identifier to vary from each of the plurality of object identifiers of the MIB or the second error that caused the first object value to vary from each of the plurality of corresponding object values of the MIB; the collection module traverses the subtree using the collection template configured to account for the at least one of the first error or the second error to identify a second object identifier that matches the collection pattern and a second object value corresponding to the second object identifier, the second object identifier varies from the plurality of object identifiers of the MIB; and the collection module associates, in a second data structure in the at least one memory element, the second object value with the first object value based on the collection template.