当我们启动我们的烧瓶应用程序,我们初始化新的文物代理如下。
import newrelic.agent
newrelic.agent.initialize('newrelic.ini')它开始跟踪在烧瓶应用程序中发生的不同事务。这包括第三方外部调用、MySQL/PostgreSQL/ElasticSearch操作。
尽管它没有跟踪使用rejson包完成的redis操作。我在某个地方读到,newrelic的python代理跟踪py-redis操作。
是否有任何特定的要求/方式来跟踪使用python代理的newrelic中的redis操作?
发布于 2022-01-06 19:56:10
看起来,rejson已经被合并到redis库中的特性中去了。您是否尝试过将redis操作从rejson更改为redis?我在https://pypi.org/project/redis/中使用了入门示例
下面是我创建的一个显示redis操作的Flask应用程序:首先,我在Ubuntu上设置了redis。
sudo apt-get install redis
redis-server
redis-cli ping然后我运行我的烧瓶应用程序
import newrelic.agent
newrelic.agent.initialize('newrelic.ini')
import redis
# Flask Web Application
flaskapp = Flask(__name__, static_url_path="/")
# Navigation
@flaskapp.route("/")
def index():
r = redis.Redis(host='localhost', port=6379, db=0)
r.set('foo', 'bar')
return r.get('foo')
# Run Flask Web Application
if __name__ == "__main__":
flaskapp.run()去http://127.0.0.1:5000/只会像预期的那样显示bar。
然后,在新遗留的APM中,我可以看到事务、数据库和分布式跟踪下的Redis set和Redis get操作。此外,Redis还显示在服务地图中。




因此,为了回答最初的问题,New python代理确实跟踪了redis-py库中的操作。除了应用程序名称和许可证密钥之外,没有任何特定的方法用于配置python代理。
https://stackoverflow.com/questions/70287386
复制相似问题