Sign up to take part
Registered users can ask their own questions, contribute to discussions, and be part of the Community!
Registered users can ask their own questions, contribute to discussions, and be part of the Community!
Hi everyone, this is my first community post so please let me know if I need to change anything about the formatting.
I am trying to set up a check on a dataset that has to do with the modified date of the underlying file. I have successfully set up a metric to get the information of the file using the following code
# Define here a function that returns the metric.
import datetime
def process(dataset, partition_id):
meta = dataset.get_files_info()
for filepath in meta["globalPaths"]:
file_size = filepath["size"]
file_date = filepath["lastModified"]
date = datetime.datetime.fromtimestamp(file_date / 1e3)
return {'file_size' : file_size, 'file_date' : file_date, 'date_mod' : date}
Next, I want to be able to access the variables file_date and date_mod on the checks python recipe. The built in comment in the code editor says that last_values is a dict but I'm not sure what the format looks like or how to access the contents of the dict.
When I try to access the values by doing following this link: https://doc.dataiku.com/dss/latest/python-api/metrics.html
def process(last_values, dataset, partition_id):
# last_values is a dict of the last values of the metrics,
# with the values as a dataiku.metrics.MetricDataPoint.
# dataset is a dataiku.Dataset object
vals = last_values.get_value()
, I get an error "PackagedPythonException : <type 'exceptions.AttributeError'> : 'dict' object has no attribute 'get_value' "
How can I get the values of the metrics that I have computer so that I can assign them to custom variables in the custom checks editor?
I used
var = last_values['python:>metric_data<:>metric_name<'].get_value()
or in my case
date_str = last_values['python:file_date:meta_info'].get_value()
and that seems to work in accessing the data from my custom metric.
I used
var = last_values['python:>metric_data<:>metric_name<'].get_value()
or in my case
date_str = last_values['python:file_date:meta_info'].get_value()
and that seems to work in accessing the data from my custom metric.