[
https://issues.apache.org/jira/browse/TS-4099?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15104127#comment-15104127
]
ASF GitHub Bot commented on TS-4099:
------------------------------------
Github user jpeach commented on a diff in the pull request:
https://github.com/apache/trafficserver/pull/422#discussion_r49960411
--- Diff: lib/bindings/repl.cc ---
@@ -0,0 +1,60 @@
+/** @file
+ *
+ * Lua bindings REPL.
+ *
+ * @section license License
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include "ink_autoconf.h"
+#include "bindings.h"
+#include <stdlib.h>
+
+#if HAVE_READLINE_H
+#include <readline.h>
+#endif
+
+void
+repl(BindingInstance &binding)
--- End diff --
Something like this (in a command-line program):
```C
Binding binding;
add_my_lua_api(binding);
repl(binding); // noreturn
```
And then you have a command line shell to evaluate your API.
> replace XML statistics with Lua
> -------------------------------
>
> Key: TS-4099
> URL: https://issues.apache.org/jira/browse/TS-4099
> Project: Traffic Server
> Issue Type: New Feature
> Components: Lua, Manager, Metrics
> Reporter: James Peach
> Assignee: James Peach
> Fix For: 6.2.0
>
>
> The custom metrics XML format is undocumented and difficult to use and
> extend. Since we plan to use Lua for configuration programmability, lets make
> a start by replacing this subsystem with Lua.
> It turns out that Lua is mostly more readable and easier to understand.
> Performance is roughly similar.
> Example syntax:
> {code}
> float 'proxy.node.user_agent_total_bytes_avg_10s' [[
> local self = ...
> return interval_delta_of_10s(self, function()
> return proxy.node.user_agent_total_bytes
> end)
> ]]
> counter 'proxy.node.origin_server_total_bytes' [[
> return proxy.node.http.origin_server_total_request_bytes +
> proxy.node.http.origin_server_total_response_bytes +
> proxy.node.http.parent_proxy_total_request_bytes +
> proxy.node.http.parent_proxy_total_response_bytes
> ]]
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)