初次学python,逐行学习公司大牛的python脚本
来源:互联网 发布:阿里云学生库存不足 编辑:程序博客网 时间:2024/06/03 17:44
初次学习python,啃完半本python基础教程后还是稀里糊涂,只好用啃代码这种笨办法继续学习加深印象。
下面的代码是公司大牛写的自动化运维部份的python脚本,配合saltstack,实现自动搭建mysql集群。
-----------------
# -*- coding: utf-8 -*-
'''
Build MySQL cluster API
'''
import time
import logging
import collections
#import 用于加载time、logging、collections模块
try:
import MySQLdb
HAS_MYSQLDB = True
except ImportError:
# MySQLdb import failed, try to import PyMySQL
HAS_MYSQLDB = False
# 尝试加载 MySQLdb模块,如存在则返回true给MYSQLDB,不存在则返回false
log = logging.getLogger(__name__)
# 创建一个log,默认情况下Python的logging模块将日志打印到了标准输出中,且只显示了大于等于WARNING级别的日志,这说明默认的日志级别设置为WARNING(日志级别等级CRITICAL > ERROR > WARNING > INFO > DEBUG > NOTSET)
#python自定义日志log类,记录不同级别的错误信息和行号,自定义的log类继承自logging.Logger,使用时可以记录具体日志出现的代码行号
def __virtual__():
'''
Only load this module if the mysql libraries exist
'''
log.error("MySQLdb is available :{0}".format(HAS_MYSQLDB))
if HAS_MYSQLDB:
return True
return (False, 'The mysql execution module cannot be loaded: no MySQLdb is available.')
def rsync_data(**kwargs):
'''
Rsync backups/demo instance from source to destination. Return {"status":False/True, "error":"something"}
These parameters are required : src/dst/buffer/mysql_version/port
'''
log.error(kwargs)
if "test" in kwargs and kwargs["test"] : return {"status":True}
param = ["src", "dst", "buffer", "mysql_version", "port", "cnf_src"]
is_legal = _check_parameter(kwargs, param)
if "error" in is_legal:
return is_legal
未完待续
- 初次学python,逐行学习公司大牛的python脚本
- python学习(逐行读取文件)
- python读取大文件并逐行写入另外一个文件
- Python 逐行读写文本文件
- python逐行读取文件
- python逐行读取文件
- python 逐行读txt
- 与python的初次接触
- 初次感受python的力量
- 跟我学python(6)----nosetests脚本学习
- 1小时学Python脚本
- python学习之--Django--初次使用templates
- 为什么学习python,如何学的好
- ArcGIS 10.0/10.1初次运行python脚本需知
- 初次使用Python脚本,proto协议文件转Lua代码
- 应用Python的公司
- Python所用的公司
- Python逐行读取文件内容
- session和cookie的理解:
- Android 中算法问题
- Java让线程执行完后再return的方法
- linux指令 -- pwd
- NFC问题分析之死锁引起的ANR
- 初次学python,逐行学习公司大牛的python脚本
- 梯度检验与高级优化
- 算法基础复习-InsertionSort
- Android SDK上手指南:用户交互
- mtk 按键中断驱动
- Android 中 非对称(RSA)加密和对称(AES)加密
- DBoW2算法
- java存储机制(栈、堆、方法区详解)
- Docker+Git效率工作