观察者可以在哪里写入 Cassandra 数据库,也就是它们在哪里记录?
Where can I observer writes to Cassandra database, aka where are they logged?
试图找出我们的一位开发人员的问题,主要是他编写的一个程序,该程序修改(添加一些标志)到我们 Cassandra 键空间中各种 table 中的现有条目。
问题是它似乎对许多 table 来说工作得很好,但到目前为止至少有 3 个我发现它没有写任何东西给他们。他的日志唯一能告诉我的是,x 行已提交到数据库,但当然,当我查询特定行时,我发现情况并非如此。
我只是想知道 Cassandra 是否在某个地方记录了每个 INSERT,这样我就可以查看日志并弄清楚当它应该将该数据插入 table 时发生了什么?我知道当发出写入命令时,它会写入提交日志,但我认为这不是人类可读的,所以我需要能够检查某个地方。
The only thing his logs can tell me is that x number of rows were
committed to the database, but of course when I query a specific row I
see that is not the case.
这听起来可能是一个一致性问题,您可以使用 CL ALL 进行查询吗?
I was just wondering if there is somewhere that Cassandra logs each
INSERT so I can look the log and figure out what was going on when it
was supposedly inserting that data into the table?
坏消息:
Cassandra 没有审计日志
好消息:
DSE 确实有审计日志 -- http://docs.datastax.com/en/datastax_enterprise/4.7/datastax_enterprise/sec/secAuditingCassandraTable.html
请记住,审计日志记录会降低性能。您可能只想暂时打开它。
试图找出我们的一位开发人员的问题,主要是他编写的一个程序,该程序修改(添加一些标志)到我们 Cassandra 键空间中各种 table 中的现有条目。
问题是它似乎对许多 table 来说工作得很好,但到目前为止至少有 3 个我发现它没有写任何东西给他们。他的日志唯一能告诉我的是,x 行已提交到数据库,但当然,当我查询特定行时,我发现情况并非如此。
我只是想知道 Cassandra 是否在某个地方记录了每个 INSERT,这样我就可以查看日志并弄清楚当它应该将该数据插入 table 时发生了什么?我知道当发出写入命令时,它会写入提交日志,但我认为这不是人类可读的,所以我需要能够检查某个地方。
The only thing his logs can tell me is that x number of rows were committed to the database, but of course when I query a specific row I see that is not the case.
这听起来可能是一个一致性问题,您可以使用 CL ALL 进行查询吗?
I was just wondering if there is somewhere that Cassandra logs each INSERT so I can look the log and figure out what was going on when it was supposedly inserting that data into the table?
坏消息:
Cassandra 没有审计日志
好消息:
DSE 确实有审计日志 -- http://docs.datastax.com/en/datastax_enterprise/4.7/datastax_enterprise/sec/secAuditingCassandraTable.html
请记住,审计日志记录会降低性能。您可能只想暂时打开它。