Update and extend luafilter documentation
Fixed the exposed function name and added minimal configuration and script examples.
This commit is contained in:
		@ -75,7 +75,7 @@ matching entry point is made.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
The luafilter exposes three functions that can be called from the Lua script.
 | 
					The luafilter exposes three functions that can be called from the Lua script.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- `string lua_qc_get_type()`
 | 
					- `string lua_qc_get_type_mask()`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  - Returns the type of the current query being executed as a string. The values
 | 
					  - Returns the type of the current query being executed as a string. The values
 | 
				
			||||||
    are the string versions of the query types defined in _query_classifier.h_
 | 
					    are the string versions of the query types defined in _query_classifier.h_
 | 
				
			||||||
@ -94,3 +94,46 @@ The luafilter exposes three functions that can be called from the Lua script.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  - This function generates unique integers that can be used to distinct
 | 
					  - This function generates unique integers that can be used to distinct
 | 
				
			||||||
    sessions from each other.
 | 
					    sessions from each other.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Example Configuration and Script
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Here is a minimal configuration entry for a luafilter definition.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					[MyLuaFilter]
 | 
				
			||||||
 | 
					type=filter
 | 
				
			||||||
 | 
					module=luafilter
 | 
				
			||||||
 | 
					global_script=/path/to/script.lua
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					And here is a script that opens a file in `/tmp/` and logs output to it.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
					f = io.open("/tmp/test.log", "a+")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function createInstance()
 | 
				
			||||||
 | 
					    f:write("createInstance\n")
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function newSession(a, b)
 | 
				
			||||||
 | 
					    f:write("newSession for: " .. a .. "@" .. b .. "\n")
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function closeSession()
 | 
				
			||||||
 | 
					    f:write("closeSession\n")
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function routeQuery(string)
 | 
				
			||||||
 | 
					    f:write("routeQuery: " .. string .. " -- type: " .. lua_qc_get_type_mask() .. " operation: " .. lua_qc_get_operation() .. "\n")
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function clientReply()
 | 
				
			||||||
 | 
					    f:write("clientReply\n")
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function diagnostic()
 | 
				
			||||||
 | 
					    f:write("diagnostics\n")
 | 
				
			||||||
 | 
					    return "Hello from Lua!"
 | 
				
			||||||
 | 
					end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					```
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user