A Python SDK for Molasses. It allows you to evaluate a user's status for a feature. It also helps simplify logging events for A/B testing.
Molasses uses polling to check if you have updated features. Once initialized, it takes microseconds to evaluate if a user is active.
1pip install molasses
Start by initializing the client with an APIKey
. This begins the
polling for any feature updates. The updates happen every 15 seconds.
1from molasses import MolassesClient23client = MolassesClient("test_key")
If you decide not to track analytics events (experiment started,
experiment success) you can turn them off by setting the send_events
field to False
1client = MolassesClient("test_key", send_events=False)
You can call is_active
with the key name and optionally a user’s
information. The id
field is used to determine whether a user is part
of a percentage of users. If you have other constraints based on user
params you can pass those in the params
field.
1client.is_active("FOO_TEST", {2"id":"foo",3"params":{4"isBetaUser":"false",5"isScaredUser":"false"6}7})
You can check if a feature is active for a user who is anonymous by just
calling is_active
with the key. You won’t be able to do percentage
roll outs or track that user’s behavior.
1client.is_active("TEST_FEATURE_FOR_USER")
To track whether an experiment was successful you can call
experiment_success
. experiment_success takes the feature’s name, any
additional parameters for the event and the user.
1client.experiment_success("GOOGLE_SSO",{2"version": "v2.3.0"3},{4"id":"foo",5"params":{6"isBetaUser":"false",7"isScaredUser":"false"8}9})
1from molasses import MolassesClient23client = MolassesClient("test_key")45if client.is_active('NEW_CHECKOUT'):6print "we are a go"7else:8print "we are a no go"