python - publish() 至少需要 3 个参数(给定 3 个)

标签 python function ceilometer

我正在使用 ceilometer python API 并将数据发布到 pubnub。不确定这个错误是什么意思。

我认为这是导致问题的代码部分,

def init_Data(data, channel):
  cpu_sample = cclient.samples.list(meter_name ='cpu_util')
  for each in cpu_sample:
    timetamp = each.timestamp
    volume =  each.counter_volume
    volume_int = int(volume)
    data_volume ={'value': volume_int}
    data=json.dumps(data_volume)
    print (data)


pubnub.publish(channel='orbit_channel', callback= init_Datar)

最佳答案

publish() takes at least 3 arguments (3 given)

多么糟糕的错误信息!一个混淆点是 self 也算作一个参数,即使它没有明确提供。

因此您需要提供 2 个参数。而你做到了!但是您需要提供 2 个必需的 参数,而您只提供了 1 个必需的和 1 个可选的 参数。检查 pubnub.publish() 的 API 文档,看看您缺少什么。

关于python - publish() 至少需要 3 个参数(给定 3 个),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31137476/

相关文章:

function - Dart:从函数访问调用者实例

python - 将云高仪输出转换为 python 数据帧

python - 如何在 Ceilometer Python 客户端 API 中实现身份验证 token

python - 如何在 python 中指定异常参数?

python - 了解赋值错误之前的引用

python - 如何在C++中使用STL在低于总长度的位数下创建排列

python - 如何计算查询集中每个项目的两个字段的总和

java - 从同一项目中的其他 Java 文件调用函数

python - Python中多个参数的乘法函数

python - Django Ceilometer 获取所有项目的事件