Example #1
0
def test_tracked_counters(redis_connection):
    if redis_connection:
        from assemblyline.remote.datatypes.counters import Counters
        with Counters('tracked-test-counter', track_counters=True) as ct:
            ct.delete()

            for x in range(10):
                ct.inc('t1')
            for x in range(20):
                ct.inc('t2', value=2)
            assert ct.tracker.keys() == ['t1', 't2']
            ct.dec('t1')
            ct.dec('t2')
            assert ct.tracker.keys() == []
            assert sorted(ct.get_queues()) == [
                'tracked-test-counter-t1', 'tracked-test-counter-t2'
            ]
            assert ct.get_queues_sizes() == {
                'tracked-test-counter-t1': 9,
                'tracked-test-counter-t2': 39
            }
            ct.reset_queues()
            assert ct.get_queues_sizes() == {
                'tracked-test-counter-t1': 0,
                'tracked-test-counter-t2': 0
            }
    port=config.core.redis.persistent.port,
    private=False,
)

#################################################################
# Configuration

CLASSIFICATION = forge.get_classification()
DEBUG = config.ui.debug
VERSION = os.environ.get(
    'ASSEMBLYLINE_VERSION',
    f"{FRAMEWORK_VERSION}.{SYSTEM_VERSION}.{BUILD_MINOR}.dev0")
AUTH_KEY = os.environ.get('SERVICE_API_KEY',
                          'ThisIsARandomAuthKey...ChangeMe!')

RATE_LIMITER = Counters(prefix="quota", host=redis, track_counters=True)

# End of Configuration
#################################################################

#################################################################
# Prepare loggers
config.logging.log_to_console = config.logging.log_to_console or DEBUG
al_log.init_logging('svc', config=config)

LOGGER = logging.getLogger('assemblyline.svc')

LOGGER.debug('Logger ready!')

# End of prepare logger
#################################################################
Example #3
0
SYSTEM_TYPE = config.system.type

BUILD_MASTER = version.FRAMEWORK_VERSION
BUILD_LOWER = version.SYSTEM_VERSION
BUILD_NO = version.BUILD_MINOR

BUNDLING_DIR = "/var/lib/assemblyline/bundling"

F_READ_CHUNK_SIZE = 1024 * 1024

TEMP_DIR_CHUNKED = "/var/lib/assemblyline/flowjs/chunked/"
TEMP_DIR = "/var/lib/assemblyline/flowjs/full/"
TEMP_SUBMIT_DIR = "/var/lib/assemblyline/submit/"

RATE_LIMITER = Counters(prefix="quota",
                        host=config.core.redis.nonpersistent.host,
                        port=config.core.redis.nonpersistent.port,
                        track_counters=True)

KV_SESSION = Hash("flask_sessions",
                  host=config.core.redis.nonpersistent.host,
                  port=config.core.redis.nonpersistent.port)


def get_token_store(key):
    return ExpiringSet(f"oauth_token_{key}",
                       host=config.core.redis.nonpersistent.host,
                       port=config.core.redis.nonpersistent.port,
                       ttl=60 * 2)


def get_reset_queue(key):