发电机利润
dynamodb-detech-ai的Python项目详细描述
发电机包艾警探在
这是艾警探访问Dynamodb的包。在
进口
importdetech_query_pkgfromdetech_query_pkgimportdynamodb_queriesasdb_queriesfromdetech_query_pkg.utilsimportdynamodb_utilsasdb_utils#Start DynamoDB Clientdb_utils.create_dynamodb_client(aws_access_key_id=AWS_ACCESS_KEY_ID,aws_secret_access_key=AWS_SECRET_ACCESS_KEY,region_name=REGION_NAME)
初始化客户端
^{pr2}$功能
发电机B
<详细信息>definsert_alert(alert_id,metric_id,org_id,app_id,team_id,assigned_to,start_time,end_time,alert_description,is_acknowledged,anomalies_dict,related_prev_anomalies,service_graph,significance_score,dynamodb)#Exampleinsert_alert(alert_id="256828",metric_id=123,org_id='org_id',app_id='app_id',team_id='team_id',assigned_to='Jorge', \ start_time='2020-09-03 12:00:00',end_time='2020-09-03 12:20:00',alert_description='Spike in costs',\ is_acknowledged='True',anomalies_dict={},related_prev_anomalies={},service_graph={},significance_score='34.3')详细信息><详细信息>
defget_alert_item_by_key(anom_id,dynamodb)详细信息><详细信息>
defupdate_alert_with_related_anomalies(alert_id,start_time,corr_anoms_dict,related_prev_anomalies,dynamodb)详细信息><详细信息>
defterminate_alert(alert_id,start_time,end_timestamp,dynamodb)详细信息><详细信息>
defcreate_metric(metric_id,date_bucket,metric_name,provider,namespace,agent,org_id,app_id,alignment,groupby,dimensions,data_points_list,dynamodb)#Examplecreate_metric(metric_id="test1",date_bucket="2020-10-02",metric_name="error_rate",provider="aws",namespace="dynamodb",agent="CloudWatch",org_id="test",app_id="app1",alignment="Sum",dimensions=[{"Name":"TableName","Value":"alerts.config"}],last=1535530432,data_points_list=[{'val':55,'time':1535530430},{'val':56,'time':1535530432}],dynamodb=dynamodb)详细信息><详细信息>
defbatch_insert_metric_objects(list_of_metric_objects,dynamodb)#Inserts list of metrics objects in batch into Dynamodb详细信息><详细信息>
defget_metric_details(metric_id,dynamodb)#Fetches all the details for a specific metric_id详细信息><详细信息>
defget_metric_item_by_key(metric_id,curr_date,dynamodb)详细信息><详细信息>
defscan_metrics_by_encrypted_id(anom_alarm_id,dynamodb)详细信息><详细信息>
defquery_alerts_configs_by_key(metric_id,dynamodb)详细信息><详细信息>
definsert_alert_config(metric_id,alert_title,severity,alert_type,alert_direction,description,duration,duration_unit,rule_dict,recipients_list,owner_dict,dynamodb)#Exampleinsert_alert_config(metric_id="metric1245",alert_title="Anomaly by Cluster",severity="critical",alert_type="anomaly",alert_direction="spikes/drops",description="Relevant to Play Store billing user journey",duration=12,duration_unit="hours",rule_dict={},recipients_list=[{"channel":"webhook","contact":"j.velez2210@gmail.com"},{"channel":"slack","contact":"j.velez2210@gmail.com"}],owner_dict={"user_id":"user12341","user_name":"João Tótó",})详细信息><详细信息>
defquery_most_recent_metric_fetching_log(component_id,dynamodb)#Fetches the log with the highest timestamp, from all the logs between start & end ts详细信息>
发电机
<详细信息>defput_item(item_dict,table_name,dynamodb)#Inserts json item into DynamoDB table#Exampleitem_dict={"attr":"value","attr2":"value2"}table_name="alerts"详细信息><详细信息>
defbatch_insert(list_of_item_dicts,table_name,dynamodb)#Inserts a list of item_dicts in batch to dynamodb详细信息><详细信息>
defget_item(key_dict,table_name,dynamodb)#Retrieves item from DynamoDB table#Examplekey_dict={"prim_key"="value","sort_key"="value"}详细信息><详细信息>
defget_item_and_retrieve_specific_attributes(key_dict,attr_list,table_name,dynamodb)#Retrieves item from DynamoDB table and retrieve specific attributes#Examplekey_dict={"prim_key":"value","sort_key":"value"}attr_list=['attr1','attr2']详细信息><详细信息>
defupdate_item(key_dict,update_expression,expression_attr_values,table_name,dynamodb)#Retrieves item from DynamoDB table#Examplekey_dict={"prim_key"="value","sort_key"="value"}update_expression="set service_graph=:i, metric_list=:l, significance_score=:s"expression_attr_values={':i':{'s1':['s2','s3']},':l':['124','123'],':s':Decimal(35.5)}#example to append to listUpdateExpression="SET some_attr = list_append(if_not_exists(some_attr, :empty_list), :i)",ExpressionAttributeValues={':i':[some_value],"empty_list":[]}详细信息><详细信息>
defupdate_item_conditionally(key_dict,condition_expression,update_expression,expression_attr_values,table_name,dynamodb)#Retrieves item from DynamoDB table#Examplekey_dict={"prim_key"="value","sort_key"="value"}update_expression="set service_graph=:i, metric_list=:l, significance_score=:s"expression_attr_values={':i':{'s1':['s2','s3']},':l':['124','123'],':s':Decimal(35.5)}condition_expression="significance_score <= :val"详细信息><详细信息>
defquery_by_key(key_condition,table_name,dynamodb)#Queries from DynamoDB table by key condition#Examplekey_condition=Key('org_id').eq('Aptoide')详细信息><详细信息>
defquery_and_project_by_key_condition(projection_expr,expr_attr_names,key_condition,table_name,dynamodb)#Queries from DynamoDB table by key condition and only returns some attrs#Examplekey_condition=Key('year').eq(year)&Key('title').between(title_range[0],title_range[1])projection_expr="#yr, title, info.genres, info.actors[0]"expr_attr_names={"#yr":"year"}详细信息><详细信息>
defscan_table(scan_kwargs,table_name,dynamodb)#Scans entire table looking for items that match the filter expression#Examplescan_kwargs={'FilterExpression':Key('year').between(*year_range),'ProjectionExpression':"#yr, title, info.rating",'ExpressionAttributeNames':{"#yr":"year"}}详细信息><详细信息>
defquery_by_key_min_max(key_condition,table_name,is_min,dynamodb)#Queries from DynamoDB table by key condition#Examplekey_condition=Key('part_id').eq(partId)&Key('range_key').between(start,end)#or key_condition=Key('part_id').eq(partId)详细信息><详细信息>
defget_all_items_in_table(table_name,dynamodb)详细信息>
- 项目
标签: