AFS版本跟踪数据库

avdb的Python项目详细描述


AVDB-AFS版本跟踪数据库

avdb分批运行openafsrxdebug命令以查找 AFS服务器在野外运行。数据存储在一个小数据库中。 目前支持sqlite和mysql数据库。

安装

在安装avdb之前安装openafsrxdebug命令。这个 rxdebug命令可以从包安装,也可以从构建openafs安装 来自源的用户空间包。rxdebug是唯一使用的openafs程序 由avdb在这个时候。不需要缓存管理器(openafs客户端)。

生成文件随avdb一起提供,以便于开发和安装 从git结帐处。avdb包可以直接从git安装 使用install-user目标签出:

$ make install-user

或用于站点范围的安装:

$ sudo make install

接下来,运行avdb init子命令来创建数据库和表。 在命令行上提供连接URL以指定数据库类型和 连接凭据。连接url将保存在avdb中 配置文件~/.avdb.ini用于随后调用avdb

创建sqlite数据库:

$ avdb init --url sqlite:////<path>/<to>/avdb.db

创建MySQL数据库:

$ avdb init --url mysql://<user>:<secret>@<hostname>/avdb \
            --admin <mysql-admin-user> \
            --password <mysql-admin-password>

示例用法

使用“import”子命令导入要扫描的单元格列表。:

$ avdb import --csdb https://grand.central.org/dl/cellservdb/CellServDB \
              --name sinenomine.net

$ avdb list

使用“scan”子命令定期扫描主机以查找版本。:

$ avdb scan --nprocs 100 --verbose

输出发现“report”子命令的版本。:

$ avdb report --output /tmp/results --format html

配置

avdb命令行选项默认值可以由ini样式配置设置 文件。站点范围的配置文件是/etc/avdb.ini,每个用户 配置文件位于$HOME/.avdb.ini。每个用户 配置文件将覆盖站点范围文件中的选项,并且 命令行参数将覆盖配置文件中的值。

配置文件包含通用选项的全局部分,其中 包括用于指定数据库连接和公用日志记录的SQL URL 选项。每个avdb子部分都有单独的部分来指定 每个子命令的默认值。有关选项名称,请参见命令行帮助。

配置文件示例:

$ cat ~/.avdb.ini
[global]
url = sqlite:////var/lib/avdb/example.db
log = /tmp/avdb.log

[scan]
nprocs = 10

[report]
format = html
output = /var/www/html/avdb.html

在python中使用avdb

除了命令行接口之外,avdb模块还可以导入到 python程序。这允许直接调用avdb子命令 常规python函数。所有子命令函数都有一个 尾随下划线以避免命名与标准python名称冲突。为了 例如,import子命令的函数名为import_

在调用avdb子命令之前,必须设置一次数据库连接url 功能。使用avdb.model.init_db()函数设置连接url。

如果需要,avdb config parser对象可以作为 avdb.subcmd.config

示例:

import avdb
url = avdb.subcmd.config.get('global', 'url')
avdb.model.init_db(url)
avdb.import_(name='sinenomine.net')
avdb.scan_(nprocs=20)
avdb.report_(format='html', output='myfile.html')

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何实时生成简单的2D图形?   java如何使用DirectoryStream过滤隐藏文件。滤器   二进制Java BigInteger测试位64位长   java Grails替换onetoone关联中的对象   爪哇七月至SLF4J大桥   java无法解决符号“窗口”错误   java在Mysql中保存NULL而不是HTML文档的文本   java当blackberry OS显示摄像头权限警报,用户点击通话结束(红色)按钮时,如何正确退出blackberry应用程序   二维地图平铺java上的块碰撞问题   java jpa mysql表不存在自动生成不工作   java在按下按钮或失去焦点时切换JDialog可见性   如何将java中的复杂映射序列化为JSON   JavaHadoop2。2.0追加文件发生AlreadyBeingCreatedException   字符串Java printDailyCost方法   feed如何修复java中新闻api的“太多请求”错误   基于字符串的java Android目录层次结构   如果键存在且值不为null,则java放入映射,否则抛出异常   java如何获取cglib代理类实例的字节码?   算法Java中按多个属性对对象进行分组的一般方法