Beispiel #1
0
def get_atmospherics():
    # make request to office
    # log req
    response = requests.get("http://192.168.1.105:1337/module/office/read")
    data = response.json()

    if not data.get("results"):
        return

    office_reading = data["results"][0]["reading"]

    co2_log = Log()

    co2_log.type = "office-co2"
    co2_log.value = office_reading["co2"]

    sesh = get_db().session

    sesh.add(co2_log)

    temp_log = Log()

    temp_log.type = "office-temperature"
    temp_log.value = office_reading["currentTemp"]

    sesh.add(temp_log)

    sesh.commit()
Beispiel #2
0
def register_user():
    """
    Register a new user.
    """
    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']

        try:
            User.register_user(username, password)
            # A session is a piece of data that is stored inside the app for each user different.
            session['username'] = username
            Log(username, 'Register.').save_to_mongo()
            flash('You have successfully registered.', 'success')
            return redirect(url_for('libors.index'))

        except errors.UserError as e:
            # Make the password strength error shorter.
            if e.message.startswith('A password must'):
                Log(username, 'Password strength error.').save_to_mongo()
            else:
                Log(username, e.message).save_to_mongo()
            flash(e.message, 'danger')
            return render_template('users/register.html')
    # If it's GET method, send user to the register page.
    return render_template('users/register.html')
Beispiel #3
0
def logout():
    """
    Log out a user.
    """
    if not session.get('username'):
        message = 'You have not logged in.'
        Log('N/A', message).save_to_mongo()
        flash(message, 'danger')
        return redirect(url_for('.login_user'))

    Log(session['username'], 'Logout.').save_to_mongo()
    session['username'] = None

    flash('You are now logged out.', 'success')
    return redirect(url_for('.login_user'))
Beispiel #4
0
    def CreateLogRequest(self, params):
        '''
        新建日志
        '''
        try:
            s = db.session()
            if not params['username']:
                return True

            type = 0
            if params['path'] == '/v1/Admin/Login':
                type = 1
                if str(params['content']) == '管理员被禁用':
                    params['status'] = 2

            item = Log(
                ip=params['ip'],
                method=params['method'],
                path=params['path'],
                username=params['username'],
                status=params['status'],
                time=params['time'],
                content=str(params['content']),
                params=str(params['params']),
                type=type
            )
            s.add(item)
            s.commit()
            return True
        except Exception, e:
            print e
            return False
Beispiel #5
0
 def post_save(cls, sender, document, **kwargs):
     if document.history_id:
         user = User().get_by_id(document.updated_by)
         user.history_id = document.history_id
         user.updated_by = document.updated_by
         user.updated = document.updated
         user.save()
         print({'history_id': document.history_id})
     else:
         changes = document._delta()[0]
         action = 'updated'
         if 'created' in kwargs:
             action = 'created' if kwargs['created'] else action
         if action == 'updated' and 'archived' in changes:
             action = 'archived' if changes['archived'] else 'restored'
         Log().create_new(str(document.id), document.name,
                          document.updated_by, document.guild, 'Zone',
                          changes, action)
         user = User().get_by_id(document.updated_by)
         if user.history_id:
             user.history_id = None
             user.updated_by = document.updated_by
             user.updated = document.updated
             user.save()
         print(changes)
Beispiel #6
0
 def save_operate_log(self,request,msg,log_type=29):
     '''写操作日志
     '''
     try:
         Log._meta.db_table = 'log_operate'
         log = Log()
         log.log_type = log_type
         log.log_server = 0
         log.log_channel = 0 
         log.log_user = request.admin.id
         log.log_data =  0
         log.log_result = 0
         log.f1 = msg[:100]
         log.f2 = request.get_full_path()[:100]
         log.f3 = request.real_ip
         post_params = unicode(json.dumps(dict(request.POST),ensure_ascii=False))
         log.f4 = post_params[:100]
         log.f5 = post_params[100:200]
         log.f6 = post_params[300:400]
         log.log_time = datetime.datetime.now()
         log.save(using='write')
     except Exception,e:
         traceback.print_exc()
         create_table_sql = Log.get_create_table_sql('log_operate')
         conn = connection
         cur = conn.cursor()
         print create_table_sql
         cur.execute(create_table_sql)
Beispiel #7
0
def authenticate(username, password):
    user = storage.get_user_by_username(username)
    if user and safe_str_cmp(user.password.encode('utf-8'),
                             hashlib.md5(password.encode()).hexdigest()):
        log = Log()
        log.user_id = user.id
        log.session_start = datetime.utcnow()
        log.save()
        return user
Beispiel #8
0
    def post(self):
        args = log_post_parser.parse_args()

        log = Log(**args)
        try:
            log.add()
        except IntegrityError:
            return max_res('', code=401, errmsg='名称重复')

        return max_res(marshal(log, log_fields))
Beispiel #9
0
    def add_user_log(self, action, description, old_value, new_value):
        log = Log()
        log.id_user = User.byEmail(g.user).userId
        log.action = action
        log.description = description
        log.old_value = old_value
        log.new_value = new_value
        log.date = datetime.now()

        self.log_portal_actions.append(log)
        return self
Beispiel #10
0
    def server_messaging(self, client):
        print("server receiving..\n")
        try:
            self.server_quit = False
            while not self.server_quit:
                try:

                    data, address = client.connection.recvfrom(1024)
                    message = jpysocket.jpydecode(data)
                    print(message)

                    log = None

                    for i in range(len(self.clients)):
                        client = self.clients[i]
                        if client.name is None:
                            self.clients[
                                i].name = message  # fist message is username!
                            log = Log(client)
                        else:
                            log = Log(client, message)

                        if log is not None:
                            break

                    print(log)

                    for client in self.clients:  # sending to clients
                        if address is not None:
                            message_to_send = jpysocket.jpyencode(message)
                            self.server.sendto(message_to_send, client.address)
                            print("sent")

                except BaseException as e:
                    print(e)
                    print("Thread has stopped")
                    self.server_quit = True
        except BaseException as e:
            print(e)
            self.server.close()
            self.server_quit = True
Beispiel #11
0
def login_user():
    """
    Log in a user.
    """
    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']

        try:
            if User.is_login_valid(username, password):
                session['username'] = username
                Log(username, 'Login.').save_to_mongo()
                flash('You have successfully logged in.', 'success')
            return redirect(url_for('libors.index'))

        except errors.UserError as e:
            Log(username, e.message).save_to_mongo()
            flash(e.message, 'danger')
            return render_template('users/login.html')
    # If it's GET method, send user to the login page.
    return render_template('users/login.html')
Beispiel #12
0
def write_hefu_log(log_user, master_id, sub_server, msg, log_result):
    try:
        Log._meta.db_table = 'log_merge_server'
        log = Log()
        log.log_user = log_user
        log.log_time = datetime.datetime.now()
        log.f1 = master_id
        log.f2 = sub_server
        log.f8 = msg
        log.log_result = log_result
        log.save(using='write')
    except BaseException as e:
        print "views --> server --> server --> write_merge_server_log error:%s" % e
Beispiel #13
0
def get_active_hosts():
    """
    Run NMAP to gather the active hosts on our network
    :return:
    """
    print("Running NMAP")
    nmap_output = check_output(["sudo", "nmap", "-sP", "--system-dns", "192.168.1.0/24"])
    print(nmap_output)
    nmap_output = nmap_output.decode()
    nmap_output = nmap_output.split("\n")

    output = parse_nmap_output(nmap_output)

    sesh = get_db().session
    for key in output.keys():
        val = output.get(key)
        log = Log()

        log.type = "host-ip-address"
        log.value = key
        sesh.add(log)

        mac = val.get("mac")
        vendor = val.get("vendor")

        if mac:
            log = Log()
            log.type = "host-mac-address"
            log.value = mac
            sesh.add(log)

        if vendor:
            log = Log()
            log.type = "host-vendor"
            log.value = vendor
            sesh.add(log)

    sesh.commit()
Beispiel #14
0
def client_open(request, mobile_info):
    '''统计安装信息
    '''
    if mobile_info != '':
        try:
            Log._meta.db_table = 'log_open'
            log = Log()
            log.log_type = 9
            log.log_user = 0
            log.f5 = request.META.get('REMOTE_ADDR', '')
            log.f6 = ''
            post_status = 1
            if request.method == 'POST' and mobile_info.find(',') == -1:
                channels = Channel.objects.using('read').filter(
                    channel_key=mobile_info)
                if len(channels) > 0:
                    log.log_channel = channels[0].id
                log.f1 = request.POST.get('imei', '')
                log.f3 = request.POST.get('dec', '')
                log.f2 = request.POST.get('ver', '')
                log.f4 = mobile_info
                log.f6 = request.POST.get('other', '')
            else:

                items = mobile_info.split(',')
                for item in items:
                    key = item.split(':')[0]
                    value = item.split(':')[1]
                    if key == 'IMEI':
                        mobile_key = value
                    elif key == 'VER':
                        log.f2 = value
                    elif key == 'DEC':
                        log.f3 = value
                    elif key == 'QD':
                        log.f4 = value
                if log.f4 != '':
                    channels = Channel.objects.using('read').filter(
                        channel_key=log.f4)
                    if len(channels) > 0:
                        log.log_channel = channels[0].id

                log.f1 = mobile_key

            post_status = 0
            log.save(using='write')

        except Exception, ex:
            print 'client open error ', ex
            post_status = 1
Beispiel #15
0
def write_gm_log(log_user,
                 log_type,
                 protocol,
                 server_id,
                 role_id,
                 role_name,
                 log_result,
                 params,
                 return_params,
                 remark1,
                 remark2='',
                 master_id=0):
    '''写GM日志
    @param log_user:操作的管理员ID
    '''
    log = Log()
    log.log_user = log_user  # 操作管理员ID
    log.log_type = log_type  # 操作类型
    log.log_server = server_id  # 服务器ID
    log.log_tag = master_id
    log.log_channel = protocol  # 协议号
    log.log_name = role_name  # 角色名
    try:
        role_id = int(role_id)
        log.log_data = role_id  # 角色ID
    except:
        pass
    finally:
        log.log_relate = role_id

    log.log_result = log_result  # 操作结果
    remark1 = unicode(remark1)
    remark2 = unicode(remark2)
    log.log_previous = remark1[:200]  # 赠送原因

    log.log_now = remark2[:200] or remark1[200:]  # 其他描述

    return_params = unicode(return_params)  # 返回参数

    log.f1 = return_params[0:100]
    log.f2 = return_params[100:200]
    log.f3 = return_params[300:400]
    log.f4 = return_params[500:600]
    log.f5 = return_params[700:800]
    log.f6 = unicode(params)  # 提交参数
    log.log_time = datetime.datetime.now()
    Log._meta.db_table = 'log_gm'
    log.save(using='write')
Beispiel #16
0
def write_kuafu_log(log_user,log_type,server_id,sort,group,sub_group,msg,log_result):
    try:
        Log._meta.db_table = 'log_kuafu'
        log = Log()
        log.log_user = log_user
        log.f8 = log_type
        log.log_server = server_id
        log.log_time = datetime.datetime.now()
        log.f1 = sort # 大组
        log.f2 = group # 分区
        log.f3 = sub_group # 分组
        log.f6 = msg
        log.log_result = log_result
        log.save(using='write')
    except BaseException as e:
        print "views --> server -->  battle_server --> write_kuafu_log error:%s"%e
Beispiel #17
0
    def save(self):
        from endless import db_session
        from sqlalchemy import inspect
        from models.log import Log

        logs = Log()
        user_history = inspect(self).attrs

        # Log full name changes
        first_name = (user_history.firstName.history[2]
                      or user_history.firstName.history[1])[0]
        last_name = (user_history.lastName.history[2]
                     or user_history.lastName.history[1])[0]
        if self.firstName != first_name or self.lastName != last_name:
            logs.add_action_log("Edit User: {0}".format(self.userId), "Name",
                                first_name + ' ' + last_name,
                                self.firstName + ' ' + self.lastName)
        db_session.commit()
        logs.save()
Beispiel #18
0
def player_history(request):
    """
    玩家采点信息记录
    """
    _r = {"code": -1}
    if request.method != 'POST':
        _r["msg"] = "method ERROR"
        return HttpResponse(json.dumps(_r))

    log_tag = request.POST.get("log_tag", 0)
    if not log_tag:
        _r["msg"] = "log_tag ERROR"
        return HttpResponse(json.dumps(_r))

    try:
        Log._meta.db_table = 'log_player_history'
        log = Log()

        log.log_tag = log_tag
        log.log_channel = request.POST.get("log_channel", 0)
        log.log_server = request.POST.get("log_server", 0)
        log.log_user = request.POST.get("log_user", 0)
        log.log_time = request.POST.get("log_time", "")
        if not log_time:
            log.log_time = datetime.datetime.now()

        if not log.log_channel or not log.log_server or not log.log_user:
            _r["msg"] = "BASE INFO ERROR"
            return HttpResponse(json.dumps(_r))

        log.save(using='write')
        return HttpResponse(json.dumps({"code": 0, "msg": "success"}))
    except Exception as e:
        print 'log player_history error', e
        _r["msg"] = "save log ERROR"
        return HttpResponse(json.dumps(_r))
Beispiel #19
0
def save_log(log_name, log_type, log_server, log_channel, log_user, log_data,
             log_result, f1, f2, f3, f4, f5, f6):
    code = 1
    try:
        Log._meta.db_table = 'log_%s' % log_name
        log = Log()
        log.log_type = log_type
        log.log_server = log_server
        log.log_channel = log_channel
        log.log_user = log_user
        log.log_data = log_data
        log.log_result = log_result
        log.f1 = f1
        log.f2 = f2
        log.f3 = f3
        log.f4 = f4
        log.f5 = f5
        log.f6 = f6
        log.log_time = datetime.datetime.now()
        log.save(using='write')
        code = 0
    except Exception, ex:
        code = -1
        print ex
Beispiel #20
0
    def __init__(self):
        """
            Initialization of the main Form
            Initialize : instance of Log class
                         instance of Message Class
                         instance of SQL Class
            Retrieves favorites substitutes in the Database
            initialize all the child Widgets
        """
        super().__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.log = Log(self.ui.te_show)
        self.message = Message(self.log)
        self.sql = SQL(self.message)

        self.categories = None
        self.products = None
        self.substitutes = None
        self.favorite_substitutes = Favorite.get_all_favorites(
            self.sql, self.message)
        self.add_favorite_to_combobox()
        self.manage_widgets()
        self.show()
Beispiel #21
0
def add_log(username, action):
    user_obj = User.query.filter_by(username=username).first_or_404()
    log_obj = Log(user=user_obj, action=action)
    db.session.add(log_obj)
    db.session.commit()
    return jsonify(log_obj.to_json()), 200
Beispiel #22
0
p1.user_id = u1.id
p1.description = 'this is description'
p1.save()
print(p1)
c1 = Comment()
c1.text = 'this is the first comment ever'
c1.user_id = u1.id
c1.post_id = p1.id
c1.save()
print(c1)
lk1 = PostLike()
lk1.post_id = p1.id
lk1.user_id = u1.id
lk1.save()
print(lk1)
lg = Log()
lg.user_id = u1.id
lg.save()
print(lg)
t1 = Topic()
t1.title = 'hotel'
t1.description = 'we love hotels'
t1.posts.append(p1)
t1.users.append(u1)
t1.save()
print(t1)
print("THIS IS U1.TOPICS!!")
print(u1.topics)
print("THIS IS U1.posts!!")
print(u1.posts)
Beispiel #23
0
from flask_restful import Resource, Api
from werkzeug.utils import secure_filename
from models.log import Log
from models.dal.mongo import Mongo
import json

#Ajustar
ALLOWED_EXTENSIONS = set(['txt'])
UPLOAD_FOLDER = '/app/filesReceived'

app = Flask(__name__)
app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER
app.config['MAX_CONTENT_LENGTH'] = 16 * 1024 * 1024

Dal = Mongo(Log.collectionName)
Log = Log(Dal)


@app.route('/', methods=['GET'])
def index():
    return render_template('index.html')


@app.route('/log/parse', methods=['POST'])
def parse():
    f = request.files['file']
    if allowed_extensions(f.filename):
        filename = secure_filename(f.filename)
        f.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
        response = Log.process(app.config['UPLOAD_FOLDER'] + "/" + f.filename)
        success = True
Beispiel #24
0
 def to_model(self):
     log = Log()
     log.type = "dns-query"
     log.value = self.lookup
     log.ts = datetime.utcfromtimestamp(int(self.timestamp))
     return log
Beispiel #25
0
# -*- coding: utf-8 -*-
Beispiel #26
0
class WechatTools(Myunit.MyUnit):
    logger = Log()

    def test_add_contacts(self):
        getconfig = Getconfigs()
        name1 = getconfig.getstr('Login', 'world1', exc=None)
        self.logger.debug(u"输出日志切记print,无报错无无法执行")
        # print name1
        for i in range(2):
            el = self.driver.find_element_by_id(
                'com.android.contacts:id/menu_add_contact')
            el.click()
            function.insert_img(self.driver, 'ele.png')

            status = self.findItem('com.android.contacts:id/left_button')
            if status:
                el1 = self.driver.find_element_by_id(
                    'com.android.contacts:id/left_button')
                el1.click()
            else:
                self.logger.debug("no element finded ")

            text_name = self.driver.find_element_by_xpath("//*[@text='姓名']")
            # name = 'phobe'+str(random.randrange(0, 9))
            text_name.send_keys(name1)

            # text_phone = self.driver.find_element_by_xpath("//*[@text='电话']")
            text_phone = self.driver.find_element_by_xpath(
                "//android.widget.EditText[@text='电话']")
            text_phone.send_keys('13' + str(random.randrange(4, 10)) + ''.join(
                str(random.choice(range(10))) for _ in range(8)))

            text_email = self.driver.find_element_by_xpath(
                "//android.widget.EditText[@text='电子邮件']")
            text_email.send_keys(str(random.randrange(4, 10)) + '*****@*****.**')

            text_address = self.driver.find_element_by_xpath(
                "//android.widget.EditText[@text='地址']")
            text_address.send_keys('8899')

            complete = self.driver.find_element_by_id(
                'com.android.contacts:id/icon')
            complete.click()

            back = self.driver.find_element_by_id('android:id/up')
            back.click()
            sleep(2)

    def test_add_favorite(self):
        ee = self.driver.find_elements_by_id(
            'com.android.contacts:id/cliv_name_textview')
        ee[0].click()

        # e1 = self.driver.find_element_by_id('android:id/action_bar_title')
        # assert 'phoe' == e1.text
        # self.assertEquals('phoe', e1.txt)

        e2 = self.driver.find_element_by_id(
            'com.android.contacts:id/menu_star')
        e2.click()

    def test_delete_contacts(self):
        ee = self.driver.find_elements_by_id(
            'com.android.contacts:id/cliv_name_textview')
        lenth = len(ee)
        if lenth > 0:
            for i in range(lenth - 1, -1, -1):
                ee[i].click()
                sleep(3)
                try:
                    self.driver.find_element_by_accessibility_id(
                        '更多选项').click()
                    self.driver.find_element_by_xpath(
                        "//*[@text='删除']").click()
                except NoSuchElementException as err:
                    function.insert_img(self.driver, 'error.png')
                    self.logger.debug(u'查找元素异常' % err)
                # 获取页上的弹框信息
                # alert = self.driver.switch_to.alert()
                # print(alert)
                self.driver.find_element_by_id('android:id/button1').click()
                # 点击返回键
                # self.driver.press_keycode(3)
        else:
            self.logger.debug('there is no contacts')
 def __init__(self):
     QtWidgets.QWidget.__init__(self)
     self.log = Log()
     self.setupUi()