使用simpleaciuilogserver和arya将ui rest api调用转换为aci python sdk代码。

AryaLogger的Python项目详细描述


使用simpleaciuilogserver和arya将ui rest api调用转换为aci python sdk代码。

安装

aryalogger的安装依赖于其他几个模块 python标准库的。下面是这些模块的基本列表:

  1. acicobra-尚未在pypi上提供
  2. Arya-在Pypi上提供
  3. simplecaiuilogserver-在Pypi上可用

安装依赖项

在这一点上,困难的依赖是眼镜蛇,因为它还没有依赖于pypi。

安装acicobra

如果APIC上至少安装了APIC版本1.0(3f),请安装 只需将pip指向APIC的cobra/u下载即可完成acicobra 使用–find links选项并使用以下两个命令之一的目录:

easy_install -Z –find-links http://apic/cobra/_downloads acicobra

或:

easy_install -Z –find-links https://apic/cobra/_downloads acicobra

如果apic禁用了http(默认设置),则必须使用https或 在APIC上启用http注:从APIC的1.1(1j)版本开始, 默认情况下,已在https的apic上禁用tlsv1。所以如果你是 使用https和python安装使用的旧openssl 支持tlsv1_1或tlsv1_2与APIC握手时可能会出现问题 桂。在python的默认安装上尤其如此 MacOSX通常使用OpenSSL的默认安装 非常古老。一般来说,人们不应该用这么旧的 OpenSSL的版本。自制啤酒可能是你最好的选择。

如果APIC上有旧版本的软件,可以下载 acicobra来自Cisco.com软件下载站点(APIC特定合同 需要绑定到Cisco.com id进行下载)或者您可以下载 acicobra卵来自apic本身并将其重命名:

https://developer.cisco.com/media/apicDcPythonAPI_v0.1/install.html

安装Arya

从pypi安装arya和使用pip一样简单:

pip install arya

安装AryaLogger

pypi上提供了aryalogger,因此安装相当简单:

pip install AryaLogger

如果没有安装simplecaiuilogserver,也应该将其拉入 已经。

运行aryalogger

有两个命令可以在系统上运行AryaLogger你只需要 要运行以下命令之一:

aryalogger

或:

AryaLogger

可以通过-h选项查看其他选项:

  • -h: Help
  • -a/–apicip: The ip address or hostname of an APIC to help resolve which ip address to print when showing the server is started.
  • -po/–port: The port for the HTTP server to listen on - default is 8987
  • -l/–location: The URI path to listen for - default is apiinspector
  • -s/–sslport: The port for the HTTPS server to listen on - default is 8443
  • -c/–cert: The certificate file to use for TLS/SSL negotiation.
  • -e/–exclude: There are three types of queries the GUI doe constantly to keep the session up or to request information to update the GUI. This option allows you to selectively exlude these queries from the output. options are:
    • subscriptionRefresh - Refreshes a subscription request for the GUI.
    • aaaRefresh - Refreshes the GUI connection to the APIC.
    • topInfo - Retrieves basic info from the APIC to update the GUI.
  • -r/–logrequests: Log the HTTP request along with the CobraSDK code.
  • -n/–nice-output: Pretty print any XML or JSON (has no affect currently in AryaLogger)
  • -i/–indent: The number of spaces to indent when pretty printing (has no affect currently in AryaLogger)

对于HTTPS,AryaLogger确实附带了一个默认的证书文件,但是它应该 不用于生产。相反,您应该创建自己的证书文件 使用openssl并将其传递给服务器:

openssl req -new -x509 -keyout server.pem -out server.pem -days 36500 -nodes

使用-c/-cert选项将其传递给AryaLogger

设置APIC

将APIC设置为向AryaLogger发送日志消息也非常简单。 当您运行AryaLogger时,它将输出所监听的地址和端口 致:

$ aryalogger serving at: http://10.1.1.100:8987/apiinspectorhttps://10.1.1.100:8443/apiinspector

如果要使用https地址访问aryalogger服务器, 确保浏览到服务器启动时打印的https地址 以便您可以接受证书异常

如果通过http连接到APIC图形用户界面(GUI),请注意 否则,如果使用https连接到GUI,请注意 https url。

在“开始远程日志记录”弹出窗口中使用此URL,可从 图形用户界面右上角的“欢迎”菜单

一旦您开始远程登录到AryaLogger提供的URL,当您 点击apic图形用户界面,您将看到自动生成的cobra sdk代码 阿亚洛格。

问题和问题

运行aryalogger时最常见的问题是 服务器启动,在APIC上设置远程日志记录,但是没有看到任何数据 被转移到服务器上。这可能是由很多原因造成的,但是 最多的公司一般来说,http不接受安全异常 证书。这可以通过连接到AryaLogger https来解决 从浏览器中获取地址并接受服务器的安全异常 证书第二个最常见的问题是防火墙正在运行 在运行aryalogger服务器的主机上。我们甚至见过主持人 在最终用户不知道的情况下运行多个防火墙

最简单的故障排除方式是进入同一个浏览器 APIC连接到的选项卡,并在中打开开发人员工具 你的浏览器。查看javascript控制台,看看是否有任何错误 打印了与正在运行aryalogger的主机的通信。

如果遇到问题,请随时在github上打开问题。

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

推荐PyPI第三方库


热门话题
jframe为什么JAVA paint()方法不起作用?   java Guice:将ContainerRequestContext注入拦截器   java如何优雅地关闭Spring JMS MessageListenerAdapter   java如何在Spring中设置快照隔离级别   Java中的安卓平台独立信任存储路径   java无法在eclipse中运行hello world程序   java Sinch空指针问题   使用Java将JSON流式传输到BigQuery   java从“大数据”中选择什么Swing控件?   java通过对象字段过滤/排序集合?   java将数据从活动传递到另一个活动中的片段   java访问打包在jar文件中的文档   Java获取事件的大小。getDragboard()。getFiles()。流()。映射(文件::长度)。toString());   java Android libgdx:启动程序图标按下后,启动屏幕不会立即显示   java如何在Google App Engine灵活环境中配置oracle jdk   java有没有办法减少这些行?   Java:客户端socket不读取第二行,在终止符行之后保持打开状态   java以编程方式获取api 29上的所有APK文件   java ActionBar按钮不显示