[{"data":1,"prerenderedAt":1509},["ShallowReactive",2],{"navigation":3,"\u002Fdocs\u002Fcore-concepts\u002Fobservability":81,"\u002Fdocs\u002Fcore-concepts\u002Fobservability-surround":1504},[4,77],{"title":5,"_path":6,"children":7,"icon":76},"Docs","\u002Fdocs",[8,23,41,51,63,69],{"title":9,"_path":10,"children":11},"Getting Started","\u002Fdocs\u002Fgetting-started",[12,14,17,20],{"title":13,"_path":10},"Introduction to Datafuse",{"title":15,"_path":16},"Installation Guide","\u002Fdocs\u002Fgetting-started\u002Finstallation",{"title":18,"_path":19},"5-Minute Quickstart","\u002Fdocs\u002Fgetting-started\u002Fquickstart",{"title":21,"_path":22},"5-Minute Quickstart with curl","\u002Fdocs\u002Fgetting-started\u002Fcurl",{"title":24,"_path":25,"children":26},"Core Concepts","\u002Fdocs\u002Fcore-concepts",[27,29,32,35,38],{"title":28,"_path":25},"Conceptual Landscape",{"title":30,"_path":31},"Adding Custom Integrations","\u002Fdocs\u002Fcore-concepts\u002Fcustom-integrations",{"title":33,"_path":34},"Managed Authentication","\u002Fdocs\u002Fcore-concepts\u002Fauthentication",{"title":36,"_path":37},"Bi-Directional Triggers","\u002Fdocs\u002Fcore-concepts\u002Ftriggers",{"title":39,"_path":40},"Observability & Auditing","\u002Fdocs\u002Fcore-concepts\u002Fobservability",{"title":42,"_path":43,"children":44},"Model Context Protocol","\u002Fdocs\u002Fmcp",[45,48],{"title":46,"_path":47},"Introduction to MCP","\u002Fdocs\u002Fmcp\u002Fintroduction",{"title":49,"_path":50},"Operating MCP Servers","\u002Fdocs\u002Fmcp\u002Fmcp-servers",{"title":52,"_path":53,"children":54},"Client SDKs","\u002Fdocs\u002Fsdks",[55,57,60],{"title":56,"_path":53},"Client Overview",{"title":58,"_path":59},"Python Client Guide","\u002Fdocs\u002Fsdks\u002Fpython",{"title":61,"_path":62},"TypeScript Client Guide","\u002Fdocs\u002Fsdks\u002Ftypescript",{"title":64,"_path":65,"children":66},"Self-Hosting & VPC","\u002Fdocs\u002Fself-hosting",[67],{"title":68,"_path":65},"Self-Hosting Guide",{"title":70,"_path":71,"children":72},"Comparisons","\u002Fdocs\u002Fcomparisons",[73],{"title":74,"_path":75},"Datafuse vs. Composio","\u002Fdocs\u002Fcomparisons\u002Fcomposio","i-heroicons-book-open",{"title":78,"_path":79,"icon":80},"Pricing","\u002Fpricing","i-heroicons-credit-card",{"_path":40,"_dir":82,"_draft":83,"_partial":83,"_locale":84,"title":39,"description":85,"body":86,"_type":1498,"_id":1499,"_source":1500,"_file":1501,"_stem":1502,"_extension":1503},"core-concepts",false,"","Track latencies, capture session-level execution history, and enforce zero-retention privacy.",{"type":87,"children":88,"toc":1489},"root",[89,105,109,116,121,166,169,175,189,282,285,291,296,301,790,793,799,804,809,1387,1390,1396,1401,1408,1420,1469,1483],{"type":90,"tag":91,"props":92,"children":93},"element","p",{},[94,97,103],{"type":95,"value":96},"text","Deploying AI agents to production requires deep, structured observability. Because agents can navigate workflows dynamically, standard HTTP logs are insufficient. Datafuse provides a comprehensive, session-aware ",{"type":90,"tag":98,"props":99,"children":100},"strong",{},[101],{"type":95,"value":102},"Audit and Logging Pipeline",{"type":95,"value":104}," that maps agent actions from start to finish.",{"type":90,"tag":106,"props":107,"children":108},"hr",{},[],{"type":90,"tag":110,"props":111,"children":113},"h2",{"id":112},"metric-tracking-capabilities",[114],{"type":95,"value":115},"Metric Tracking Capabilities",{"type":90,"tag":91,"props":117,"children":118},{},[119],{"type":95,"value":120},"Datafuse intercepts every tool request at the gateway boundary, capturing core telemetry metrics:",{"type":90,"tag":122,"props":123,"children":124},"ul",{},[125,136,146,156],{"type":90,"tag":126,"props":127,"children":128},"li",{},[129,134],{"type":90,"tag":98,"props":130,"children":131},{},[132],{"type":95,"value":133},"Execution Latency",{"type":95,"value":135},": Network-level breakdown showing proxy duration vs. provider response latency.",{"type":90,"tag":126,"props":137,"children":138},{},[139,144],{"type":90,"tag":98,"props":140,"children":141},{},[142],{"type":95,"value":143},"Response Payload Audits",{"type":95,"value":145},": Raw byte sizes and response structures to alert on API contract shifts.",{"type":90,"tag":126,"props":147,"children":148},{},[149,154],{"type":90,"tag":98,"props":150,"children":151},{},[152],{"type":95,"value":153},"Result Status Verification",{"type":95,"value":155},": Track downstream HTTP errors, database connection failures, and validation exceptions.",{"type":90,"tag":126,"props":157,"children":158},{},[159,164],{"type":90,"tag":98,"props":160,"children":161},{},[162],{"type":95,"value":163},"LLM Session Tracking",{"type":95,"value":165},": Group multiple, sequential tool calls under a single parent agent session ID to trace complex multi-step reasoning workflows.",{"type":90,"tag":106,"props":167,"children":168},{},[],{"type":90,"tag":110,"props":170,"children":172},{"id":171},"dynamic-telemetry-visualizations",[173],{"type":95,"value":174},"Dynamic Telemetry Visualizations",{"type":90,"tag":91,"props":176,"children":177},{},[178,180,187],{"type":95,"value":179},"The Datafuse Console renders real-time execution statistics directly under ",{"type":90,"tag":181,"props":182,"children":184},"code",{"className":183},[],[185],{"type":95,"value":186},"\u002Fapp\u002Flogs",{"type":95,"value":188},", grouping executions by latency curves, throughput, and error density.",{"type":90,"tag":190,"props":191,"children":194},"pre",{"className":192,"code":193,"language":95,"meta":84,"style":84},"language-text shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","    LATENCY DISTRIBUTION CURVE (Real-Time Console)\n\n    500ms │               █\n    400ms │             █ █ █\n    300ms │           █ █ █ █ █\n    200ms │         █ █ █ █ █ █ █\n    100ms │       █ █ █ █ █ █ █ █ █\n    0ms   └───────────────────────────────\n             GET     POST    DELETE    PATCH\n",[195],{"type":90,"tag":181,"props":196,"children":197},{"__ignoreMap":84},[198,209,219,228,237,246,255,264,273],{"type":90,"tag":199,"props":200,"children":203},"span",{"class":201,"line":202},"line",1,[204],{"type":90,"tag":199,"props":205,"children":206},{},[207],{"type":95,"value":208},"    LATENCY DISTRIBUTION CURVE (Real-Time Console)\n",{"type":90,"tag":199,"props":210,"children":212},{"class":201,"line":211},2,[213],{"type":90,"tag":199,"props":214,"children":216},{"emptyLinePlaceholder":215},true,[217],{"type":95,"value":218},"\n",{"type":90,"tag":199,"props":220,"children":222},{"class":201,"line":221},3,[223],{"type":90,"tag":199,"props":224,"children":225},{},[226],{"type":95,"value":227},"    500ms │               █\n",{"type":90,"tag":199,"props":229,"children":231},{"class":201,"line":230},4,[232],{"type":90,"tag":199,"props":233,"children":234},{},[235],{"type":95,"value":236},"    400ms │             █ █ █\n",{"type":90,"tag":199,"props":238,"children":240},{"class":201,"line":239},5,[241],{"type":90,"tag":199,"props":242,"children":243},{},[244],{"type":95,"value":245},"    300ms │           █ █ █ █ █\n",{"type":90,"tag":199,"props":247,"children":249},{"class":201,"line":248},6,[250],{"type":90,"tag":199,"props":251,"children":252},{},[253],{"type":95,"value":254},"    200ms │         █ █ █ █ █ █ █\n",{"type":90,"tag":199,"props":256,"children":258},{"class":201,"line":257},7,[259],{"type":90,"tag":199,"props":260,"children":261},{},[262],{"type":95,"value":263},"    100ms │       █ █ █ █ █ █ █ █ █\n",{"type":90,"tag":199,"props":265,"children":267},{"class":201,"line":266},8,[268],{"type":90,"tag":199,"props":269,"children":270},{},[271],{"type":95,"value":272},"    0ms   └───────────────────────────────\n",{"type":90,"tag":199,"props":274,"children":276},{"class":201,"line":275},9,[277],{"type":90,"tag":199,"props":278,"children":279},{},[280],{"type":95,"value":281},"             GET     POST    DELETE    PATCH\n",{"type":90,"tag":106,"props":283,"children":284},{},[],{"type":90,"tag":110,"props":286,"children":288},{"id":287},"structured-audit-schema",[289],{"type":95,"value":290},"Structured Audit Schema",{"type":90,"tag":91,"props":292,"children":293},{},[294],{"type":95,"value":295},"Every API invocation generates a strongly-typed audit trail.",{"type":90,"tag":91,"props":297,"children":298},{},[299],{"type":95,"value":300},"Here is an example of an audit payload compiled by our telemetry services:",{"type":90,"tag":190,"props":302,"children":306},{"className":303,"code":304,"language":305,"meta":84,"style":84},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"id\": \"e2f1e687-cc51-4f51-b847-ec074d0a68d0\",\n  \"project_id\": \"proj_01j7v68s...\",\n  \"session_id\": \"session_agent_alpha_92\",\n  \"action\": \"slack.post_message\",\n  \"resource_type\": \"toolkit\",\n  \"resource_id\": \"slack\",\n  \"duration_ms\": 234,\n  \"status_code\": 200,\n  \"metadata_json\": {\n    \"ip\": \"12.34.56.78\",\n    \"caller\": \"handshake_bot\",\n    \"mutating\": true\n  },\n  \"created_at\": \"2026-05-23T03:07:43Z\"\n}\n","json",[307],{"type":90,"tag":181,"props":308,"children":309},{"__ignoreMap":84},[310,319,363,400,437,474,511,548,578,607,633,673,711,737,746,781],{"type":90,"tag":199,"props":311,"children":312},{"class":201,"line":202},[313],{"type":90,"tag":199,"props":314,"children":316},{"style":315},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[317],{"type":95,"value":318},"{\n",{"type":90,"tag":199,"props":320,"children":321},{"class":201,"line":211},[322,327,333,338,343,348,354,358],{"type":90,"tag":199,"props":323,"children":324},{"style":315},[325],{"type":95,"value":326},"  \"",{"type":90,"tag":199,"props":328,"children":330},{"style":329},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[331],{"type":95,"value":332},"id",{"type":90,"tag":199,"props":334,"children":335},{"style":315},[336],{"type":95,"value":337},"\"",{"type":90,"tag":199,"props":339,"children":340},{"style":315},[341],{"type":95,"value":342},":",{"type":90,"tag":199,"props":344,"children":345},{"style":315},[346],{"type":95,"value":347}," \"",{"type":90,"tag":199,"props":349,"children":351},{"style":350},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[352],{"type":95,"value":353},"e2f1e687-cc51-4f51-b847-ec074d0a68d0",{"type":90,"tag":199,"props":355,"children":356},{"style":315},[357],{"type":95,"value":337},{"type":90,"tag":199,"props":359,"children":360},{"style":315},[361],{"type":95,"value":362},",\n",{"type":90,"tag":199,"props":364,"children":365},{"class":201,"line":221},[366,370,375,379,383,387,392,396],{"type":90,"tag":199,"props":367,"children":368},{"style":315},[369],{"type":95,"value":326},{"type":90,"tag":199,"props":371,"children":372},{"style":329},[373],{"type":95,"value":374},"project_id",{"type":90,"tag":199,"props":376,"children":377},{"style":315},[378],{"type":95,"value":337},{"type":90,"tag":199,"props":380,"children":381},{"style":315},[382],{"type":95,"value":342},{"type":90,"tag":199,"props":384,"children":385},{"style":315},[386],{"type":95,"value":347},{"type":90,"tag":199,"props":388,"children":389},{"style":350},[390],{"type":95,"value":391},"proj_01j7v68s...",{"type":90,"tag":199,"props":393,"children":394},{"style":315},[395],{"type":95,"value":337},{"type":90,"tag":199,"props":397,"children":398},{"style":315},[399],{"type":95,"value":362},{"type":90,"tag":199,"props":401,"children":402},{"class":201,"line":230},[403,407,412,416,420,424,429,433],{"type":90,"tag":199,"props":404,"children":405},{"style":315},[406],{"type":95,"value":326},{"type":90,"tag":199,"props":408,"children":409},{"style":329},[410],{"type":95,"value":411},"session_id",{"type":90,"tag":199,"props":413,"children":414},{"style":315},[415],{"type":95,"value":337},{"type":90,"tag":199,"props":417,"children":418},{"style":315},[419],{"type":95,"value":342},{"type":90,"tag":199,"props":421,"children":422},{"style":315},[423],{"type":95,"value":347},{"type":90,"tag":199,"props":425,"children":426},{"style":350},[427],{"type":95,"value":428},"session_agent_alpha_92",{"type":90,"tag":199,"props":430,"children":431},{"style":315},[432],{"type":95,"value":337},{"type":90,"tag":199,"props":434,"children":435},{"style":315},[436],{"type":95,"value":362},{"type":90,"tag":199,"props":438,"children":439},{"class":201,"line":239},[440,444,449,453,457,461,466,470],{"type":90,"tag":199,"props":441,"children":442},{"style":315},[443],{"type":95,"value":326},{"type":90,"tag":199,"props":445,"children":446},{"style":329},[447],{"type":95,"value":448},"action",{"type":90,"tag":199,"props":450,"children":451},{"style":315},[452],{"type":95,"value":337},{"type":90,"tag":199,"props":454,"children":455},{"style":315},[456],{"type":95,"value":342},{"type":90,"tag":199,"props":458,"children":459},{"style":315},[460],{"type":95,"value":347},{"type":90,"tag":199,"props":462,"children":463},{"style":350},[464],{"type":95,"value":465},"slack.post_message",{"type":90,"tag":199,"props":467,"children":468},{"style":315},[469],{"type":95,"value":337},{"type":90,"tag":199,"props":471,"children":472},{"style":315},[473],{"type":95,"value":362},{"type":90,"tag":199,"props":475,"children":476},{"class":201,"line":248},[477,481,486,490,494,498,503,507],{"type":90,"tag":199,"props":478,"children":479},{"style":315},[480],{"type":95,"value":326},{"type":90,"tag":199,"props":482,"children":483},{"style":329},[484],{"type":95,"value":485},"resource_type",{"type":90,"tag":199,"props":487,"children":488},{"style":315},[489],{"type":95,"value":337},{"type":90,"tag":199,"props":491,"children":492},{"style":315},[493],{"type":95,"value":342},{"type":90,"tag":199,"props":495,"children":496},{"style":315},[497],{"type":95,"value":347},{"type":90,"tag":199,"props":499,"children":500},{"style":350},[501],{"type":95,"value":502},"toolkit",{"type":90,"tag":199,"props":504,"children":505},{"style":315},[506],{"type":95,"value":337},{"type":90,"tag":199,"props":508,"children":509},{"style":315},[510],{"type":95,"value":362},{"type":90,"tag":199,"props":512,"children":513},{"class":201,"line":257},[514,518,523,527,531,535,540,544],{"type":90,"tag":199,"props":515,"children":516},{"style":315},[517],{"type":95,"value":326},{"type":90,"tag":199,"props":519,"children":520},{"style":329},[521],{"type":95,"value":522},"resource_id",{"type":90,"tag":199,"props":524,"children":525},{"style":315},[526],{"type":95,"value":337},{"type":90,"tag":199,"props":528,"children":529},{"style":315},[530],{"type":95,"value":342},{"type":90,"tag":199,"props":532,"children":533},{"style":315},[534],{"type":95,"value":347},{"type":90,"tag":199,"props":536,"children":537},{"style":350},[538],{"type":95,"value":539},"slack",{"type":90,"tag":199,"props":541,"children":542},{"style":315},[543],{"type":95,"value":337},{"type":90,"tag":199,"props":545,"children":546},{"style":315},[547],{"type":95,"value":362},{"type":90,"tag":199,"props":549,"children":550},{"class":201,"line":266},[551,555,560,564,568,574],{"type":90,"tag":199,"props":552,"children":553},{"style":315},[554],{"type":95,"value":326},{"type":90,"tag":199,"props":556,"children":557},{"style":329},[558],{"type":95,"value":559},"duration_ms",{"type":90,"tag":199,"props":561,"children":562},{"style":315},[563],{"type":95,"value":337},{"type":90,"tag":199,"props":565,"children":566},{"style":315},[567],{"type":95,"value":342},{"type":90,"tag":199,"props":569,"children":571},{"style":570},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[572],{"type":95,"value":573}," 234",{"type":90,"tag":199,"props":575,"children":576},{"style":315},[577],{"type":95,"value":362},{"type":90,"tag":199,"props":579,"children":580},{"class":201,"line":275},[581,585,590,594,598,603],{"type":90,"tag":199,"props":582,"children":583},{"style":315},[584],{"type":95,"value":326},{"type":90,"tag":199,"props":586,"children":587},{"style":329},[588],{"type":95,"value":589},"status_code",{"type":90,"tag":199,"props":591,"children":592},{"style":315},[593],{"type":95,"value":337},{"type":90,"tag":199,"props":595,"children":596},{"style":315},[597],{"type":95,"value":342},{"type":90,"tag":199,"props":599,"children":600},{"style":570},[601],{"type":95,"value":602}," 200",{"type":90,"tag":199,"props":604,"children":605},{"style":315},[606],{"type":95,"value":362},{"type":90,"tag":199,"props":608,"children":610},{"class":201,"line":609},10,[611,615,620,624,628],{"type":90,"tag":199,"props":612,"children":613},{"style":315},[614],{"type":95,"value":326},{"type":90,"tag":199,"props":616,"children":617},{"style":329},[618],{"type":95,"value":619},"metadata_json",{"type":90,"tag":199,"props":621,"children":622},{"style":315},[623],{"type":95,"value":337},{"type":90,"tag":199,"props":625,"children":626},{"style":315},[627],{"type":95,"value":342},{"type":90,"tag":199,"props":629,"children":630},{"style":315},[631],{"type":95,"value":632}," {\n",{"type":90,"tag":199,"props":634,"children":636},{"class":201,"line":635},11,[637,642,648,652,656,660,665,669],{"type":90,"tag":199,"props":638,"children":639},{"style":315},[640],{"type":95,"value":641},"    \"",{"type":90,"tag":199,"props":643,"children":645},{"style":644},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[646],{"type":95,"value":647},"ip",{"type":90,"tag":199,"props":649,"children":650},{"style":315},[651],{"type":95,"value":337},{"type":90,"tag":199,"props":653,"children":654},{"style":315},[655],{"type":95,"value":342},{"type":90,"tag":199,"props":657,"children":658},{"style":315},[659],{"type":95,"value":347},{"type":90,"tag":199,"props":661,"children":662},{"style":350},[663],{"type":95,"value":664},"12.34.56.78",{"type":90,"tag":199,"props":666,"children":667},{"style":315},[668],{"type":95,"value":337},{"type":90,"tag":199,"props":670,"children":671},{"style":315},[672],{"type":95,"value":362},{"type":90,"tag":199,"props":674,"children":676},{"class":201,"line":675},12,[677,681,686,690,694,698,703,707],{"type":90,"tag":199,"props":678,"children":679},{"style":315},[680],{"type":95,"value":641},{"type":90,"tag":199,"props":682,"children":683},{"style":644},[684],{"type":95,"value":685},"caller",{"type":90,"tag":199,"props":687,"children":688},{"style":315},[689],{"type":95,"value":337},{"type":90,"tag":199,"props":691,"children":692},{"style":315},[693],{"type":95,"value":342},{"type":90,"tag":199,"props":695,"children":696},{"style":315},[697],{"type":95,"value":347},{"type":90,"tag":199,"props":699,"children":700},{"style":350},[701],{"type":95,"value":702},"handshake_bot",{"type":90,"tag":199,"props":704,"children":705},{"style":315},[706],{"type":95,"value":337},{"type":90,"tag":199,"props":708,"children":709},{"style":315},[710],{"type":95,"value":362},{"type":90,"tag":199,"props":712,"children":714},{"class":201,"line":713},13,[715,719,724,728,732],{"type":90,"tag":199,"props":716,"children":717},{"style":315},[718],{"type":95,"value":641},{"type":90,"tag":199,"props":720,"children":721},{"style":644},[722],{"type":95,"value":723},"mutating",{"type":90,"tag":199,"props":725,"children":726},{"style":315},[727],{"type":95,"value":337},{"type":90,"tag":199,"props":729,"children":730},{"style":315},[731],{"type":95,"value":342},{"type":90,"tag":199,"props":733,"children":734},{"style":315},[735],{"type":95,"value":736}," true\n",{"type":90,"tag":199,"props":738,"children":740},{"class":201,"line":739},14,[741],{"type":90,"tag":199,"props":742,"children":743},{"style":315},[744],{"type":95,"value":745},"  },\n",{"type":90,"tag":199,"props":747,"children":749},{"class":201,"line":748},15,[750,754,759,763,767,771,776],{"type":90,"tag":199,"props":751,"children":752},{"style":315},[753],{"type":95,"value":326},{"type":90,"tag":199,"props":755,"children":756},{"style":329},[757],{"type":95,"value":758},"created_at",{"type":90,"tag":199,"props":760,"children":761},{"style":315},[762],{"type":95,"value":337},{"type":90,"tag":199,"props":764,"children":765},{"style":315},[766],{"type":95,"value":342},{"type":90,"tag":199,"props":768,"children":769},{"style":315},[770],{"type":95,"value":347},{"type":90,"tag":199,"props":772,"children":773},{"style":350},[774],{"type":95,"value":775},"2026-05-23T03:07:43Z",{"type":90,"tag":199,"props":777,"children":778},{"style":315},[779],{"type":95,"value":780},"\"\n",{"type":90,"tag":199,"props":782,"children":784},{"class":201,"line":783},16,[785],{"type":90,"tag":199,"props":786,"children":787},{"style":315},[788],{"type":95,"value":789},"}\n",{"type":90,"tag":106,"props":791,"children":792},{},[],{"type":90,"tag":110,"props":794,"children":796},{"id":795},"decoupled-audit-logging",[797],{"type":95,"value":798},"Decoupled Audit Logging",{"type":90,"tag":91,"props":800,"children":801},{},[802],{"type":95,"value":803},"Developers can record custom application-level traces or operational messages directly through our unified SDKs.",{"type":90,"tag":91,"props":805,"children":806},{},[807],{"type":95,"value":808},"This is highly useful for creating end-to-end debugging trails, linking LLM thoughts to external API calls:",{"type":90,"tag":810,"props":811,"children":812},"code-group",{},[813,1125],{"type":90,"tag":190,"props":814,"children":819},{"className":815,"code":816,"filename":817,"language":818,"meta":84,"style":84},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","from datafuse.generated import AuditLogCreate\n\n# Record custom agent reasoning step in Datafuse console\nsdk.logs.create_audit_log(\n    audit_log_create=AuditLogCreate(\n        action=\"agent.reasoning_step\",\n        resource_type=\"agent_reasoning\",\n        resource_id=\"session_123\",\n        metadata_json={\n            \"thought\": \"User requested channel publish. Searching for Ably integration...\",\n            \"decision\": \"Invoke ably.publish_message\"\n        }\n    )\n)\n","Python","python",[820],{"type":90,"tag":181,"props":821,"children":822},{"__ignoreMap":84},[823,858,865,874,907,930,959,988,1017,1030,1068,1101,1109,1117],{"type":90,"tag":199,"props":824,"children":825},{"class":201,"line":202},[826,832,838,843,848,853],{"type":90,"tag":199,"props":827,"children":829},{"style":828},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[830],{"type":95,"value":831},"from",{"type":90,"tag":199,"props":833,"children":835},{"style":834},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[836],{"type":95,"value":837}," datafuse",{"type":90,"tag":199,"props":839,"children":840},{"style":315},[841],{"type":95,"value":842},".",{"type":90,"tag":199,"props":844,"children":845},{"style":834},[846],{"type":95,"value":847},"generated ",{"type":90,"tag":199,"props":849,"children":850},{"style":828},[851],{"type":95,"value":852},"import",{"type":90,"tag":199,"props":854,"children":855},{"style":834},[856],{"type":95,"value":857}," AuditLogCreate\n",{"type":90,"tag":199,"props":859,"children":860},{"class":201,"line":211},[861],{"type":90,"tag":199,"props":862,"children":863},{"emptyLinePlaceholder":215},[864],{"type":95,"value":218},{"type":90,"tag":199,"props":866,"children":867},{"class":201,"line":221},[868],{"type":90,"tag":199,"props":869,"children":871},{"style":870},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[872],{"type":95,"value":873},"# Record custom agent reasoning step in Datafuse console\n",{"type":90,"tag":199,"props":875,"children":876},{"class":201,"line":230},[877,882,886,892,896,902],{"type":90,"tag":199,"props":878,"children":879},{"style":834},[880],{"type":95,"value":881},"sdk",{"type":90,"tag":199,"props":883,"children":884},{"style":315},[885],{"type":95,"value":842},{"type":90,"tag":199,"props":887,"children":889},{"style":888},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[890],{"type":95,"value":891},"logs",{"type":90,"tag":199,"props":893,"children":894},{"style":315},[895],{"type":95,"value":842},{"type":90,"tag":199,"props":897,"children":899},{"style":898},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[900],{"type":95,"value":901},"create_audit_log",{"type":90,"tag":199,"props":903,"children":904},{"style":315},[905],{"type":95,"value":906},"(\n",{"type":90,"tag":199,"props":908,"children":909},{"class":201,"line":239},[910,916,921,926],{"type":90,"tag":199,"props":911,"children":913},{"style":912},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[914],{"type":95,"value":915},"    audit_log_create",{"type":90,"tag":199,"props":917,"children":918},{"style":315},[919],{"type":95,"value":920},"=",{"type":90,"tag":199,"props":922,"children":923},{"style":898},[924],{"type":95,"value":925},"AuditLogCreate",{"type":90,"tag":199,"props":927,"children":928},{"style":315},[929],{"type":95,"value":906},{"type":90,"tag":199,"props":931,"children":932},{"class":201,"line":248},[933,938,942,946,951,955],{"type":90,"tag":199,"props":934,"children":935},{"style":912},[936],{"type":95,"value":937},"        action",{"type":90,"tag":199,"props":939,"children":940},{"style":315},[941],{"type":95,"value":920},{"type":90,"tag":199,"props":943,"children":944},{"style":315},[945],{"type":95,"value":337},{"type":90,"tag":199,"props":947,"children":948},{"style":350},[949],{"type":95,"value":950},"agent.reasoning_step",{"type":90,"tag":199,"props":952,"children":953},{"style":315},[954],{"type":95,"value":337},{"type":90,"tag":199,"props":956,"children":957},{"style":315},[958],{"type":95,"value":362},{"type":90,"tag":199,"props":960,"children":961},{"class":201,"line":257},[962,967,971,975,980,984],{"type":90,"tag":199,"props":963,"children":964},{"style":912},[965],{"type":95,"value":966},"        resource_type",{"type":90,"tag":199,"props":968,"children":969},{"style":315},[970],{"type":95,"value":920},{"type":90,"tag":199,"props":972,"children":973},{"style":315},[974],{"type":95,"value":337},{"type":90,"tag":199,"props":976,"children":977},{"style":350},[978],{"type":95,"value":979},"agent_reasoning",{"type":90,"tag":199,"props":981,"children":982},{"style":315},[983],{"type":95,"value":337},{"type":90,"tag":199,"props":985,"children":986},{"style":315},[987],{"type":95,"value":362},{"type":90,"tag":199,"props":989,"children":990},{"class":201,"line":266},[991,996,1000,1004,1009,1013],{"type":90,"tag":199,"props":992,"children":993},{"style":912},[994],{"type":95,"value":995},"        resource_id",{"type":90,"tag":199,"props":997,"children":998},{"style":315},[999],{"type":95,"value":920},{"type":90,"tag":199,"props":1001,"children":1002},{"style":315},[1003],{"type":95,"value":337},{"type":90,"tag":199,"props":1005,"children":1006},{"style":350},[1007],{"type":95,"value":1008},"session_123",{"type":90,"tag":199,"props":1010,"children":1011},{"style":315},[1012],{"type":95,"value":337},{"type":90,"tag":199,"props":1014,"children":1015},{"style":315},[1016],{"type":95,"value":362},{"type":90,"tag":199,"props":1018,"children":1019},{"class":201,"line":275},[1020,1025],{"type":90,"tag":199,"props":1021,"children":1022},{"style":912},[1023],{"type":95,"value":1024},"        metadata_json",{"type":90,"tag":199,"props":1026,"children":1027},{"style":315},[1028],{"type":95,"value":1029},"={\n",{"type":90,"tag":199,"props":1031,"children":1032},{"class":201,"line":609},[1033,1038,1043,1047,1051,1055,1060,1064],{"type":90,"tag":199,"props":1034,"children":1035},{"style":315},[1036],{"type":95,"value":1037},"            \"",{"type":90,"tag":199,"props":1039,"children":1040},{"style":350},[1041],{"type":95,"value":1042},"thought",{"type":90,"tag":199,"props":1044,"children":1045},{"style":315},[1046],{"type":95,"value":337},{"type":90,"tag":199,"props":1048,"children":1049},{"style":315},[1050],{"type":95,"value":342},{"type":90,"tag":199,"props":1052,"children":1053},{"style":315},[1054],{"type":95,"value":347},{"type":90,"tag":199,"props":1056,"children":1057},{"style":350},[1058],{"type":95,"value":1059},"User requested channel publish. Searching for Ably integration...",{"type":90,"tag":199,"props":1061,"children":1062},{"style":315},[1063],{"type":95,"value":337},{"type":90,"tag":199,"props":1065,"children":1066},{"style":315},[1067],{"type":95,"value":362},{"type":90,"tag":199,"props":1069,"children":1070},{"class":201,"line":635},[1071,1075,1080,1084,1088,1092,1097],{"type":90,"tag":199,"props":1072,"children":1073},{"style":315},[1074],{"type":95,"value":1037},{"type":90,"tag":199,"props":1076,"children":1077},{"style":350},[1078],{"type":95,"value":1079},"decision",{"type":90,"tag":199,"props":1081,"children":1082},{"style":315},[1083],{"type":95,"value":337},{"type":90,"tag":199,"props":1085,"children":1086},{"style":315},[1087],{"type":95,"value":342},{"type":90,"tag":199,"props":1089,"children":1090},{"style":315},[1091],{"type":95,"value":347},{"type":90,"tag":199,"props":1093,"children":1094},{"style":350},[1095],{"type":95,"value":1096},"Invoke ably.publish_message",{"type":90,"tag":199,"props":1098,"children":1099},{"style":315},[1100],{"type":95,"value":780},{"type":90,"tag":199,"props":1102,"children":1103},{"class":201,"line":675},[1104],{"type":90,"tag":199,"props":1105,"children":1106},{"style":315},[1107],{"type":95,"value":1108},"        }\n",{"type":90,"tag":199,"props":1110,"children":1111},{"class":201,"line":713},[1112],{"type":90,"tag":199,"props":1113,"children":1114},{"style":315},[1115],{"type":95,"value":1116},"    )\n",{"type":90,"tag":199,"props":1118,"children":1119},{"class":201,"line":739},[1120],{"type":90,"tag":199,"props":1121,"children":1122},{"style":315},[1123],{"type":95,"value":1124},")\n",{"type":90,"tag":190,"props":1126,"children":1131},{"className":1127,"code":1128,"filename":1129,"language":1130,"meta":84,"style":84},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Record custom agent reasoning step in Datafuse console\nawait sdk.logs.createAuditLog({\n  auditLogCreate: {\n    action: 'agent.reasoning_step',\n    resourceType: 'agent_reasoning',\n    resourceId: 'session_123',\n    metadataJson: {\n      thought: 'User requested channel publish. Searching for Ably integration...',\n      decision: 'Invoke ably.publish_message'\n    }\n  }\n});\n","TypeScript","typescript",[1132],{"type":90,"tag":181,"props":1133,"children":1134},{"__ignoreMap":84},[1135,1143,1182,1198,1228,1256,1284,1300,1328,1353,1361,1369],{"type":90,"tag":199,"props":1136,"children":1137},{"class":201,"line":202},[1138],{"type":90,"tag":199,"props":1139,"children":1140},{"style":870},[1141],{"type":95,"value":1142},"\u002F\u002F Record custom agent reasoning step in Datafuse console\n",{"type":90,"tag":199,"props":1144,"children":1145},{"class":201,"line":211},[1146,1151,1156,1160,1164,1168,1173,1178],{"type":90,"tag":199,"props":1147,"children":1148},{"style":828},[1149],{"type":95,"value":1150},"await",{"type":90,"tag":199,"props":1152,"children":1153},{"style":834},[1154],{"type":95,"value":1155}," sdk",{"type":90,"tag":199,"props":1157,"children":1158},{"style":315},[1159],{"type":95,"value":842},{"type":90,"tag":199,"props":1161,"children":1162},{"style":834},[1163],{"type":95,"value":891},{"type":90,"tag":199,"props":1165,"children":1166},{"style":315},[1167],{"type":95,"value":842},{"type":90,"tag":199,"props":1169,"children":1170},{"style":898},[1171],{"type":95,"value":1172},"createAuditLog",{"type":90,"tag":199,"props":1174,"children":1175},{"style":834},[1176],{"type":95,"value":1177},"(",{"type":90,"tag":199,"props":1179,"children":1180},{"style":315},[1181],{"type":95,"value":318},{"type":90,"tag":199,"props":1183,"children":1184},{"class":201,"line":221},[1185,1190,1194],{"type":90,"tag":199,"props":1186,"children":1187},{"style":888},[1188],{"type":95,"value":1189},"  auditLogCreate",{"type":90,"tag":199,"props":1191,"children":1192},{"style":315},[1193],{"type":95,"value":342},{"type":90,"tag":199,"props":1195,"children":1196},{"style":315},[1197],{"type":95,"value":632},{"type":90,"tag":199,"props":1199,"children":1200},{"class":201,"line":230},[1201,1206,1210,1215,1219,1224],{"type":90,"tag":199,"props":1202,"children":1203},{"style":888},[1204],{"type":95,"value":1205},"    action",{"type":90,"tag":199,"props":1207,"children":1208},{"style":315},[1209],{"type":95,"value":342},{"type":90,"tag":199,"props":1211,"children":1212},{"style":315},[1213],{"type":95,"value":1214}," '",{"type":90,"tag":199,"props":1216,"children":1217},{"style":350},[1218],{"type":95,"value":950},{"type":90,"tag":199,"props":1220,"children":1221},{"style":315},[1222],{"type":95,"value":1223},"'",{"type":90,"tag":199,"props":1225,"children":1226},{"style":315},[1227],{"type":95,"value":362},{"type":90,"tag":199,"props":1229,"children":1230},{"class":201,"line":239},[1231,1236,1240,1244,1248,1252],{"type":90,"tag":199,"props":1232,"children":1233},{"style":888},[1234],{"type":95,"value":1235},"    resourceType",{"type":90,"tag":199,"props":1237,"children":1238},{"style":315},[1239],{"type":95,"value":342},{"type":90,"tag":199,"props":1241,"children":1242},{"style":315},[1243],{"type":95,"value":1214},{"type":90,"tag":199,"props":1245,"children":1246},{"style":350},[1247],{"type":95,"value":979},{"type":90,"tag":199,"props":1249,"children":1250},{"style":315},[1251],{"type":95,"value":1223},{"type":90,"tag":199,"props":1253,"children":1254},{"style":315},[1255],{"type":95,"value":362},{"type":90,"tag":199,"props":1257,"children":1258},{"class":201,"line":248},[1259,1264,1268,1272,1276,1280],{"type":90,"tag":199,"props":1260,"children":1261},{"style":888},[1262],{"type":95,"value":1263},"    resourceId",{"type":90,"tag":199,"props":1265,"children":1266},{"style":315},[1267],{"type":95,"value":342},{"type":90,"tag":199,"props":1269,"children":1270},{"style":315},[1271],{"type":95,"value":1214},{"type":90,"tag":199,"props":1273,"children":1274},{"style":350},[1275],{"type":95,"value":1008},{"type":90,"tag":199,"props":1277,"children":1278},{"style":315},[1279],{"type":95,"value":1223},{"type":90,"tag":199,"props":1281,"children":1282},{"style":315},[1283],{"type":95,"value":362},{"type":90,"tag":199,"props":1285,"children":1286},{"class":201,"line":257},[1287,1292,1296],{"type":90,"tag":199,"props":1288,"children":1289},{"style":888},[1290],{"type":95,"value":1291},"    metadataJson",{"type":90,"tag":199,"props":1293,"children":1294},{"style":315},[1295],{"type":95,"value":342},{"type":90,"tag":199,"props":1297,"children":1298},{"style":315},[1299],{"type":95,"value":632},{"type":90,"tag":199,"props":1301,"children":1302},{"class":201,"line":266},[1303,1308,1312,1316,1320,1324],{"type":90,"tag":199,"props":1304,"children":1305},{"style":888},[1306],{"type":95,"value":1307},"      thought",{"type":90,"tag":199,"props":1309,"children":1310},{"style":315},[1311],{"type":95,"value":342},{"type":90,"tag":199,"props":1313,"children":1314},{"style":315},[1315],{"type":95,"value":1214},{"type":90,"tag":199,"props":1317,"children":1318},{"style":350},[1319],{"type":95,"value":1059},{"type":90,"tag":199,"props":1321,"children":1322},{"style":315},[1323],{"type":95,"value":1223},{"type":90,"tag":199,"props":1325,"children":1326},{"style":315},[1327],{"type":95,"value":362},{"type":90,"tag":199,"props":1329,"children":1330},{"class":201,"line":275},[1331,1336,1340,1344,1348],{"type":90,"tag":199,"props":1332,"children":1333},{"style":888},[1334],{"type":95,"value":1335},"      decision",{"type":90,"tag":199,"props":1337,"children":1338},{"style":315},[1339],{"type":95,"value":342},{"type":90,"tag":199,"props":1341,"children":1342},{"style":315},[1343],{"type":95,"value":1214},{"type":90,"tag":199,"props":1345,"children":1346},{"style":350},[1347],{"type":95,"value":1096},{"type":90,"tag":199,"props":1349,"children":1350},{"style":315},[1351],{"type":95,"value":1352},"'\n",{"type":90,"tag":199,"props":1354,"children":1355},{"class":201,"line":609},[1356],{"type":90,"tag":199,"props":1357,"children":1358},{"style":315},[1359],{"type":95,"value":1360},"    }\n",{"type":90,"tag":199,"props":1362,"children":1363},{"class":201,"line":635},[1364],{"type":90,"tag":199,"props":1365,"children":1366},{"style":315},[1367],{"type":95,"value":1368},"  }\n",{"type":90,"tag":199,"props":1370,"children":1371},{"class":201,"line":675},[1372,1377,1382],{"type":90,"tag":199,"props":1373,"children":1374},{"style":315},[1375],{"type":95,"value":1376},"}",{"type":90,"tag":199,"props":1378,"children":1379},{"style":834},[1380],{"type":95,"value":1381},")",{"type":90,"tag":199,"props":1383,"children":1384},{"style":315},[1385],{"type":95,"value":1386},";\n",{"type":90,"tag":106,"props":1388,"children":1389},{},[],{"type":90,"tag":110,"props":1391,"children":1393},{"id":1392},"enforcing-zero-retention-compliance",[1394],{"type":95,"value":1395},"Enforcing Zero-Retention Compliance",{"type":90,"tag":91,"props":1397,"children":1398},{},[1399],{"type":95,"value":1400},"For industries governed by strict compliance laws (such as healthcare, banking, and government contracts), storing raw tool payloads on third-party servers presents a significant regulatory risk.",{"type":90,"tag":1402,"props":1403,"children":1405},"h3",{"id":1404},"the-zero-retention-vault",[1406],{"type":95,"value":1407},"The Zero-Retention Vault",{"type":90,"tag":91,"props":1409,"children":1410},{},[1411,1413,1418],{"type":95,"value":1412},"Datafuse offers a cryptographically enforced ",{"type":90,"tag":98,"props":1414,"children":1415},{},[1416],{"type":95,"value":1417},"Zero-Retention Mode",{"type":95,"value":1419}," at the VPC container level:",{"type":90,"tag":122,"props":1421,"children":1422},{},[1423,1433,1443],{"type":90,"tag":126,"props":1424,"children":1425},{},[1426,1431],{"type":90,"tag":98,"props":1427,"children":1428},{},[1429],{"type":95,"value":1430},"Ephemeral Proxy Ingress",{"type":95,"value":1432},": Payloads are parsed completely in-memory inside container memory buffers.",{"type":90,"tag":126,"props":1434,"children":1435},{},[1436,1441],{"type":90,"tag":98,"props":1437,"children":1438},{},[1439],{"type":95,"value":1440},"Instant Memory Purging",{"type":95,"value":1442},": As soon as the payload response is returned to the client SDK, the buffer is zeroed out.",{"type":90,"tag":126,"props":1444,"children":1445},{},[1446,1451,1453,1459,1461,1467],{"type":90,"tag":98,"props":1447,"children":1448},{},[1449],{"type":95,"value":1450},"Cryptographic Truncation",{"type":95,"value":1452},": Logs retain only the metadata (timestamp, action slug, latency, status code) while the raw ",{"type":90,"tag":181,"props":1454,"children":1456},{"className":1455},[],[1457],{"type":95,"value":1458},"arguments",{"type":95,"value":1460}," and ",{"type":90,"tag":181,"props":1462,"children":1464},{"className":1463},[],[1465],{"type":95,"value":1466},"response",{"type":95,"value":1468}," structures are cryptographically redacted, ensuring zero PII leakages.",{"type":90,"tag":1470,"props":1471,"children":1472},"blockquote",{},[1473],{"type":90,"tag":91,"props":1474,"children":1475},{},[1476,1481],{"type":90,"tag":199,"props":1477,"children":1478},{},[1479],{"type":95,"value":1480},"!WARNING",{"type":95,"value":1482},"\nWhen Zero-Retention Mode is activated, payloads cannot be recovered. Live debugging in the Console must be conducted in real-time via authenticated secure logging streams, as history data is never persisted.",{"type":90,"tag":1484,"props":1485,"children":1486},"style",{},[1487],{"type":95,"value":1488},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":84,"searchDepth":211,"depth":211,"links":1490},[1491,1492,1493,1494,1495],{"id":112,"depth":211,"text":115},{"id":171,"depth":211,"text":174},{"id":287,"depth":211,"text":290},{"id":795,"depth":211,"text":798},{"id":1392,"depth":211,"text":1395,"children":1496},[1497],{"id":1404,"depth":221,"text":1407},"markdown","content:1.docs:2.core-concepts:5.observability.md","content","1.docs\u002F2.core-concepts\u002F5.observability.md","1.docs\u002F2.core-concepts\u002F5.observability","md",[1505,1507],{"_path":37,"title":36,"description":1506},"Connect active webhooks and propagate external system events directly back into your AI agent loops.",{"_path":47,"title":46,"description":1508},"Understand how Datafuse bridges and operates Model Context Protocol (MCP) integrations.",1780069615251]