def process_line(self, input_line):

        if len(self.__sampling_rules) == 0:
            self.total_passes += 1L
            return 1.0

        sampling_rule = self.__find_first_match(input_line)
        if sampling_rule is None:
            return 1.0
        else:
            sampling_rule.total_matches += 1L
            if self.__flip_biased_coin(sampling_rule.sampling_rate):
                sampling_rule.total_passes += 1L
                self.total_passes += 1L
                return sampling_rule.sampling_rate
        return None
Performs all configured sampling operations on the input line and returns whether or not it should
dataset/ETHPy150Open scalyr/scalyr-agent-2/scalyr_agent/log_processing.py/LogLineSampler.process_line