<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def check(self):
 """ Evaluate health status from device parameters. """

        try:
            self.get_snmp_from_host1()
            self.get_snmp_from_host2()
        except (health_monitoring_plugins.SnmpException, TypeError, KeyError):
            self.helper.status(unknown)
            self.helper.add_summary("SNMP response incomplete or invalid")
            return

        self.helper.add_summary("Filter Status")
        self.helper.add_long_output("Power Supply 1: %s" % self.ps1_value)
        if self.ps1_value != "ok":
            self.helper.status(critical)
            self.helper.add_summary("Power Supply 1: %s" % self.ps1_value)

        self.helper.add_long_output("Power Supply 2: %s" % self.ps2_value)
        if self.ps2_value != "ok":
            self.helper.status(critical)
            self.helper.add_summary("Power Supply 2: %s" % self.ps2_value)

        self.helper.add_long_output("Fan 1: %s" % self.fan1_value)
        if self.fan1_value != "ok":
            self.helper.status(critical)
            self.helper.add_summary("Fan 1: %s" % self.fan1_value)

        self.helper.add_long_output("Fan 2: %s" % self.fan2_value)
        if self.fan2_value != "ok":
            self.helper.status(critical)
            self.helper.add_summary("Fan 2: %s" % self.fan2_value)

        self.helper.add_long_output("Battery: %s" % self.bat_value)
        if self.bat_value != "ok":
            self.helper.status(critical)
            self.helper.add_summary("Battery: %s" % self.bat_value)

        self.helper.add_long_output("Temperature: %s" % self.temp_value)
        if self.temp_value != "ok":
            self.helper.status(critical)
            self.helper.add_summary("Temperature: %s" % self.temp_value)

        self.helper.add_metric(label='logfill',value=self.logfill_value, uom="%%")
        self.helper.add_long_output("Fill Level internal log: %s%%" % self.logfill_value)

        self.helper.add_long_output("Activity State: %s" % self.activity_value1)
        if self.activity_value1 == "error":
            self.helper.status(critical)
            self.helper.add_summary("Activity State: %s" % self.activity_value1)

        if self.activity_value2:
            self.helper.add_long_output("Activity State 2: %s" % self.activity_value2)
            if self.activity_value1 == "active" and self.activity_value2 == "active":
                self.helper.status(critical)
                self.helper.add_summary("Filter 1 and Filter 2 active!")
                    
            if self.activity_value1 == "standby" and self.activity_value2 == "standby":
                self.helper.status(critical)
                self.helper.add_summary("Filter 1 and Filter 2 standby!")

        self.helper.check_all_metrics()