Exemplo n.º 1
0
Arquivo: db.py Projeto: motiteux/dac
    def runs(self, as_df=False, price_config=None, last=None, since_days=None):
        """Returns the job's run.

        Parameters:
        -----------
        - as_df : boolean (default: False)
            Convert the runs to pandas dataframe
        - price_config : dict (default: None)
            Price config used to compute cluster cost
        - last : int (default: None)
            Filters the last N results (no filtering if set to None)
        - since_days : int (default: None)
            Filters to last N days (no filtering if set to None)

        Returns:
        --------
        runs : list of JobRun objects or pd.DataFrame
            The job's runs as list of sqlalchemy objects
            or as a pandas DataFrame
        """
        runs = self.jobruns

        if since_days is not None:
            runs = [run for run in runs if run.start_time >= since(since_days)]

        if last is not None:
            runs = runs[-last:]

        if as_df:
            runs = pd.DataFrame([run.to_dict(price_config) for run in runs])

        return runs
Exemplo n.º 2
0
 def dbu(self, since_days=7):
     states = self.state_df()
     return (states
             .loc[states.timestamp >= since(since_days)]
             .interval_dbu
             .sum())
Exemplo n.º 3
0
 def active(self, since_days=7):
     states = self.state_df()
     states = states.loc[states.timestamp >= since(since_days)]
     return not states.empty