IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Ubuntu移植A-Tune踩坑记录 -> 正文阅读

[系统运维]Ubuntu移植A-Tune踩坑记录

1.注意python和go环境依赖在root用户下安装,我在自己的账户下pip3 install numpy,切换为root后还是会显示缺少numpy模块。go环境也是一样

go环境安装: apt-get install golang-go

2. 若出现systemctl start atune-engine能运行,systemctl start atuned不能运行,

根据issue

您好,这个问题可能是由于缺少依赖引起的,可以尝试执行python3

A-Tune/analysis/app_rest.py A-Tune/misc/atuned.cnf,根据报错安装对应的python3依赖包

若出现 list out of range报错,需要修改atune-collector的源代码

第一个地方是 atune-collector/plugin/monitor/memory/topo.py,在format方法中,添加注释的两行

    def format(self, info, fmt):
        """
        format the result of the operation
        :param info:  content that needs to be converted
        :param fmt:  converted format
        :returns output:  converted result
        """
        if fmt in ("json", "table", "xml"):
            with open('/dev/null', 'w') as no_print:
                o_json = subprocess.check_output("{cmd} -json".format(
                    cmd=self.__cmd).split(), stderr=no_print)
            info = o_json.decode()
            json_content = json.loads(info)
            #if (isinstance(json_content, list)):
            #    json_content = {'children': json_content}

            dict_datas = get_class_type(json_content, "memory", "System Memory")
            if fmt == "json":
                return json.dumps(dict_datas, indent=2)
            if fmt == "xml":
                import dict2xml
                return dict2xml.dict2xml(dict_datas, "topology")

            return None
        return Monitor.format(self, info, fmt)

第二个地方是atune-collector/plugin/monitor/common.py中,将walk_class_type方法替换为下面的代码

def walk_class_type(father, class_type, desc, datas):
    """get key field"""
    if "class" in father and father["class"] == class_type:
        if "description" in father and (desc is None or father["description"].lower() == desc.lower()):
            datas.append(father)
            return
    if "children" in father:
        for i in father["children"]:
            walk_class_type(i, class_type, desc, datas)

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-01-30 19:17:57  更:2022-01-30 19:20:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 7:52:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码