def execute_long_work(model):
    appd.init(appd_env, 100000)

    mybt = appd.start_bt('/test_py')

    print('Starting long execution')

    time.sleep(5)
    print('almost there')

    time.sleep(5)

    test2.delay()
    print('Done')

    appd.end_bt(mybt)
    appd.shutdown()
예제 #2
0
#!/usr/bin/env python
import os
import sys

from appdynamics.agent import api as appd

if __name__ == '__main__':

    appd.init(
        {'APPD_APP_NAME': 'Python',
         'APPD_TIER_NAME': 'django',
         'APPD_NODE_NAME': 'dlopes-mac',
         'APPD_CONTROLLER_HOST': 'controller',
         'APPD_CONTROLLER_PORT': '8090',
         'APPD_ACCOUNT_ACCESS_KEY': 'access_key',
         'APPD_LOGGING_LEVEL': 'debug'
         }
    )

    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'appdasync.settings')
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)
예제 #3
0
def setup():
    print("Lets setup the AppD agent ...\n\n")
    appd.init()
예제 #4
0
from appdynamics.agent import api as appd


def do_something():
    # Loop to put enough load.
    for x in range(1):
        print('do something')
        time.sleep(1)


app = FastAPI()
env_dict = {
    "APPD_NODE_NAME":
    os.getenv('APPD_NODE_NAME', 'fastAPI-test') + "_" + socket.gethostname()
}
appd.init(environ=env_dict, timeout_ms=appd.api.NO_TIMEOUT)


class Item(BaseModel):
    name: str
    price: float
    is_offer: Optional[bool] = None


@app.get("/")
def read_root():
    return {"Hello": "World"}


@app.get("/items/{item_id}")
def read_item(item_id: int, request: Request, q: Optional[str] = None):
예제 #5
0
from appdynamics.agent import api as appd

appd.init(timeout_ms=60000)

import requests
import random
import json
import time


def post():
    bt = appd.start_bt("Post Product")
    products = [
        "apple", "orange", "mac", "keyboard", "mouse", "car", "tv", "human",
        "sex", "noidea", "maybe", "product", "thing", "legs", "shorts",
        "window", "sky"
    ]

    try:
        data = {
            "name": random.choice(products),
            "price": float(random.uniform(15.0, 999.99))
        }

        r = requests.post("http://localhost:3000/products", data=data)
        print(r.json())
    except:
        pass

    appd.end_bt(bt)
예제 #6
0
파일: loop.py 프로젝트: svrnm/python-sqs
# APPDYNAMICS: Import and init
from appdynamics.agent import api as appd
appd.init()

import os
import boto3
import time

sqs = boto3.resource('sqs')
queue = sqs.get_queue_by_name(QueueName='appd-test-queue')

if __name__ == "__main__":
    while True:
        for message in queue.receive_messages(MessageAttributeNames=[
                'Author', 'AppDynamicsCorrelationHeader'
        ]):
            # Get the custom author message attribute if it was set
            author_text = ''
            correlation_header = None
            if message.message_attributes is not None:
                author_name = message.message_attributes.get('Author').get(
                    'StringValue')
                correlation_header = message.message_attributes.get(
                    'AppDynamicsCorrelationHeader').get('StringValue')
                if author_name:
                    author_text = ' ({0})'.format(author_name)

            # Print out the body and author (if set)
            # APPDYNAMICS: Create BT handle manually
            print('process message...')
            with appd.bt('process message', correlation_header) as bt_handle: