geowatchutil.runtime module¶
Provides runtime functions. These functions wrap factory functions with exception handling and timeouts.
-
geowatchutil.runtime.build_broker_kwargs(brokerconfig, globalconfig, templates=None, verbose=False)[source]¶
-
geowatchutil.runtime.provision_broker(brokerconfig, globalconfig, templates=None, verbose=True)[source]¶ Provision new GeoWatch broker.
brokerconfigis a broker dict configurations.globalconfigis a dict configuration for shared variables, such as AWS Region, AWS Credentials, etc. Fallback for missing broker-specific values.provision_broker()returns aGeoWatchBrokerbroker.Examples
from geowatchutil.runtime import provision_broker globalconfig = {'aws_access_key_id':'', 'aws_secret_access_key':'', 'aws_region':''} brokers = provision_brokers(settings.GEOWATCH_BROKERS_CRON, globalconfig=globalconfig) for broker in brokers: broker.run(maxcycle=1)
-
geowatchutil.runtime.provision_brokers(watchlist, globalconfig=None, templates=None, brokerfilter=None, verbose=False)[source]¶ Provision new GeoWatch brokers.
watchlistis a list of broker dict configurations.globalconfigis a dict configuration for shared variables, such as AWS Region, AWS Credentials, etc. Fallback for missing broker-specific values.If
brokerfilterare non-None then they are used for filtering the brokers against their message filters. This is more efficient than initializing brokers that will never be used.provision_brokers()returns a list ofGeoWatchBrokerbrokers.Examples
from geowatchutil.runtime import provision_brokers config = {'aws_access_key_id':'', 'aws_secret_access_key':'', 'aws_region':''} brokers = provision_brokers(settings.GEOWATCH_BROKERS_CRON, config=config) for broker in brokers: broker.run(maxcycle=1)
-
geowatchutil.runtime.provision_node(backend, mode, **kwargs)[source]¶ Provision a new GeoWatch Node.
backendis either: ‘kafka’, ‘kinesis’, ‘slack’, ‘sns’, or ‘sqs’.If
client=Noneinkwargs,provision_producer()will create a client.provision_producer()returns a tuple(client, producer).Examples
from geowatchutil.runtime import provision_producer client, consumer = provision_producer('kafka', host="localhost") client, consumer = provision_producer( 'kinesis', aws_region=aws_region, aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key, topic_prefix=topic_prefix)
-
geowatchutil.runtime.provision_store(backend, key, codec, **kwargs)[source]¶ Provision a new GeoWatch store.
backendis either: ‘file’, ‘memcached’, ‘s3’, or ‘wfs’.codecis either: ‘plain’, ‘json’, ‘tilerequest’, or ‘wfs’.provision_store()returns astore.Examples
from geowatchutil.runtime import provision_store store = provision_store( 's3', 'results.json', 'json', aws_region=aws_region, aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key, aws_bucket=aws_bucket)