George Pearse
11/18/2021, 3:26 PMSalvador Ribolzi
11/18/2021, 5:38 PMKyle Downey
11/18/2021, 6:00 PM2021-11-18 11:00:12 - dagster - DEBUG - load_uniswap_trades - 19832c79-3c58-4909-ac08-fb6f22dbbe24 - 47605 - load_uniswap_v2_trades - STEP_OUTPUT - Yielded output "result" of type "UniswapV2TradeDataFrame". Warning! Type check failed.
rhl
11/18/2021, 6:59 PMrhl
11/18/2021, 7:00 PMAndy Chen
11/18/2021, 9:56 PMChris Chan
11/18/2021, 11:48 PMSelector
in conjunction with other fields? Like say I wanted to accept:
date: YYYY-MM-DD
jar: some_string
and
date: YYYY-MM-DD
jar_path: some dict
as both valid configs, but I only want jar
or jar_path
specified, not both. And I would want to require one of them
The example in the docs doesn’t use Selector
with other fieldsStefan Adelbert
11/19/2021, 12:24 AMOpDefinition
I'm writing a test for a failure_hook
, which relies on context.op.op_name
. So when I'm testing the hook I need to build a HookContext
with an op
. Can anyone suggest a good way to mock an OpDefinition
that I can pass to build_hook_context
?Stefan Adelbert
11/19/2021, 3:37 AMdagit
running, each running jobs from several (remote) gRPC repos. All run workers will submit structured log messages to Google Cloud Logging, where I will monitor (dashboards) and alert for all jobs. I need a way to distinguish between log messages on the basis of the dagit
instance that ran the job, i.e. I'd like to inject same fairly static info into each log message like a human-friendly instance ID.
I created a logging.Formatter
which structures and partially serializes the logging.LogRecord
and also created a logging.Handler
which wraps a google.cloud.logging.Client
. I configure the logging in dagster.yaml
like so
python_logs:
dagster_handler_config:
handlers:
myHandler:
class: my_logging.google_cloud_logging.Handler
level: DEBUG
formatter: myFormatter
formatters:
myFormatter:
class: my_logging.google_cloud_logging.Formatter
My thought was to extend my formatter to take additional "static" values which could be injected into the log record and this will work find for now.
But I'm keen to hear your thoughts on how to achieve this more gracefully. Perhaps somehow using [logging.LoggerAdapter](https://docs.python.org/3/library/logging.html#loggeradapter-objects).Edwin Kamande
11/19/2021, 3:38 AMdagster.core.errors.DagsterInvalidConfigError: Error in config for job
Error 1: Missing required config entry "resources" at the root.
I already have config_schema specified on the resource, Do I need to specify another config for the job/graph or what am i missing ? here is a stackoverflow link with the code <https://stackoverflow.com/q/70024709/6473175>
Jonathan PHOON
11/19/2021, 10:49 AMQumber Ali
11/19/2021, 1:46 PM/usr/bin/python3 -c from multiprocessing.spawn
multiprocessing.semaphore_tracker
processes start running and system got overload and with only 8 concurrent jobs my 16 cores/64 ram systemd overlods, in fact i'm not importing multiprocessing
this library in my code please help on it.Nick Dellosa
11/19/2021, 5:34 PMCharlie Bini
11/19/2021, 5:47 PMops
etc? Each region uses common systems we're pulling data from but they're on different instances with their own configs. I'd like to avoid redundancy as much as possible, so does anyone have advice on the best way to approach this?Martim Passos
11/19/2021, 7:35 PMFalse
in the pipeline declaration and just add -c {"solids": {"my_solid": {"config": True}}}
when calling dagster pipeline execute
(as you can see I didn’t move to 0.13 yet)…Jim Nisivoccia
11/19/2021, 11:15 PMMikołaj Gradowski
11/20/2021, 11:39 AM7AM - time()
seconds. What bothers me with these is the unnecessary coupling of getting the data and scheduling.George Pearse
11/21/2021, 8:43 PMEric
11/22/2021, 1:48 AMStefan Adelbert
11/22/2021, 6:09 AMMarcel M
11/22/2021, 11:50 AM@run_status_sensor(pipeline_run_status=PipelineRunStatus.SUCCESS)
def sensor_on_run_success(context: RunStatusSensorContext):
print(f"Sensing Success of pipeline: {context.pipeline_run.pipeline_name}")
The logs however show it as “failure”:
2021-11-22 12:44:38 - SensorDaemon - INFO - Completed a reaction request for run fa8e1c61-71f6-40f1-a932-e95ef472c802: Sensor "sensor_on_run_success" processed failure of run fa8e1c61-71f6-40f1-a932-e95ef472c802.
So the sensor works correctly but the log is wrong.Moiz
11/22/2021, 2:20 PMcompute_logs:
module: dagster.core.storage.noop_compute_log_manager
class: NoOpComputeLogManager
but still, they are saved to storage directory in ~/dagster_home/…… same happened with “S3ComputeLogManager”
my dagster.yaml is:
run_coordinator:
module: dagster.core.run_coordinator
class: QueuedRunCoordinator
config:
max_concurrent_runs: 200
tag_concurrency_limits:
- key: "type"
value:
applyLimitPerUniqueValue: True
limit: 16
run_storage:
module: dagster_postgres.run_storage
class: PostgresRunStorage
config:
postgres_db:
username:
password:
hostname: "127.0.0.1"
db_name: "dagster"
port: 5432
event_log_storage:
module: dagster_postgres.event_log
class: PostgresEventLogStorage
config:
postgres_db:
username:
password:
db_name: dagster
hostname: 127.0.0.1
port: 5432
schedule_storage:
module: dagster_postgres.schedule_storage
class: PostgresScheduleStorage
config:
postgres_db:
username:
password:
db_name: dagster
hostname: 127.0.0.1
port: 5432
#compute_logs:
# module: dagster_aws.s3.compute_log_manager
# class: S3ComputeLogManager
# config:
# bucket: "dagster-compute-logs"
# prefix: "dagster-test-"
compute_logs:
module: dagster.core.storage.noop_compute_log_manager
class: NoOpComputeLogManager
Igor
11/22/2021, 5:02 PMGeorge Pearse
11/22/2021, 5:49 PMChris Chan
11/22/2021, 6:21 PMdagster-aws
with how tags are set on the cluster - https://github.com/dagster-io/dagster/pull/5755 should fix itMatthew Smicker
11/22/2021, 11:11 PMKevin Haynes
11/23/2021, 12:00 AMdagster.yaml
(attached) to include specifications for the run_launcher, run_storage, event_log_storage, schedule_storage, and compute_logs... but I still end up with a local folder called storage
containing a folder named with the run ID in turn containing folders named for each op. Is there a config I'm missing that affects this?Igor
11/23/2021, 7:56 AMfrom dagster import job, op
@op
def return_one(context):
pass
@op
def add_one(context):
pass
@job
def linear():
add_one(add_one(add_one(return_one())))
Etisha
11/23/2021, 9:38 AMQumber Ali
11/23/2021, 9:47 AM