Can you confirm under $PREFIX/libexec whether your so is libtslua.so or just tslua.so?
From: Adi Mallikarjuna Reddy V [mailto:[email protected]] Sent: Monday, May 08, 2017 9:19 AM To: [email protected] Subject: Re: remap rules based on request header remap rule map /random_path http://dummy_destination.com/<https://urldefense.proofpoint.com/v2/url?u=http-3A__dummy-5Fdestination.com_&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=K0oZsi1uAx2GmQgJekzD1loEWHi9IblIQHkAeo6Gv6s&e=> @pristine_host_hdr=1 @plugin=libtslua.so @pparam=lua_remap.lua script - lua_remap.lua function do_remap() ts.client_request.set_url_host('actual_destination.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__actual-5Fdestination.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=gMVKB-qIrbHaJpgahMg0b5Ci-6fcR9PjVjN7NDDmO5A&e=>') ts.client_request.set_url_port(80) ts.client_request.set_url_scheme('http') return TS_LUA_REMAP_DID_REMAP end No extra info with debug tag ts_lua enabled, as this seems to be failing to parse the remap config itself. Thanks Adi On Mon, May 8, 2017 at 9:13 AM, Jeremy Payne <[email protected]<mailto:[email protected]>> wrote: verify your remap rules and/or lua scripts to ensure they are syntactically correct. also enable debug.. .may provide further insight.. can you also share your remap file and corresponding lua scripts ? On Mon, May 8, 2017 at 11:00 AM, Adi Mallikarjuna Reddy V <[email protected]<mailto:[email protected]>> wrote: After adding lua plugin with remap rule in remap.config and writing some sample code mentioned in https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host<https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html-23ts-2Dclient-2Drequest-2Dset-2Durl-2Dhost&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=8hNBtGINccPrv-LWK0mijOBbgZwcRbdEDUqjZT4aSQg&e=> I see the following error in traffic server. [May 8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Failed to create new instance for plugin libtslua.so (not a TS_SUCCESS return) [May 8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: Could not add rule at line #25; Aborting! [May 8 08:57:44.851] Server {0x2aeb0862c2c0} WARNING: [ReverseProxy] Can't create new remap instance for plugin "libtslua.so" - [TSRemapNewInstance] ts_lua_add_module failed at line 25 [May 8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: something failed during BuildTable() -- check your remap plugins! [May 8 08:57:44.852] Server {0x2aeb0862c2c0} WARNING: Can not load the remap table, exiting out! Is there any thing that I am missing out? Thanks Adi On Sun, Feb 5, 2017 at 11:39 PM, Shu Kit Chan <[email protected]<mailto:[email protected]>> wrote: No, you don't need lua runtime on your host. Just compile the experimental plugin and that's it. More information here - https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html<https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=Ywi_5Wywe1DE2z7TyH8_M3sGgN6FdF6QUj5F7iQeEzQ&e=> Thanks. On Wed, Jan 25, 2017 at 5:10 PM, Adi Mallikarjuna Reddy V <[email protected]<mailto:[email protected]>> wrote: > For this to work, do I have to install Lua runtime on my host? > > On Wed, Jan 25, 2017 at 10:49 AM, Jeremy Payne > <[email protected]<mailto:[email protected]>> wrote: >> >> i use the lua plugin to change origin host based on certain conditions. >> >> >> https://docs.trafficserver.apache.org/en/latest/admin-guide/plugins/ts_lua.en.html#ts-client-request-set-url-host<https://urldefense.proofpoint.com/v2/url?u=https-3A__docs.trafficserver.apache.org_en_latest_admin-2Dguide_plugins_ts-5Flua.en.html-23ts-2Dclient-2Drequest-2Dset-2Durl-2Dhost&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=8hNBtGINccPrv-LWK0mijOBbgZwcRbdEDUqjZT4aSQg&e=> >> >> On Wed, Jan 25, 2017 at 12:33 PM, Adi Mallikarjuna Reddy V >> <[email protected]<mailto:[email protected]>> >> wrote: >>> >>> any help with this is greatly appreciated. Is there a debug flag to check >>> header rewrite functionality? >>> >>> On Tue, Jan 24, 2017 at 1:42 PM, Adi Mallikarjuna Reddy V >>> <[email protected]<mailto:[email protected]>> >>> wrote: >>>> >>>> Thanks Sudheer for the pointer. I tried the following and it looks like >>>> this condition is not working >>>> >>>> cond %{READ_REQUEST_HDR_HOOK} >>>> >>>> cond %{CLIENT-HEADER:DEVHOST} = dev103 >>>> >>>> set-destination HOST >>>> dev103.abc.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__dev103.abc.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=I-TXLn8hvUXSYc1jKRX6HA1RGKmTFotYZSH81xpjOKs&e=> >>>> [L] >>>> >>>> >>>> >>>> and >>>> >>>> curl -H 'DEVHOST:dev103' >>>> 'http://actual_ats_endpoint/path<https://urldefense.proofpoint.com/v2/url?u=http-3A__actual-5Fats-5Fendpoint_path&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=FmYuLf6S_I1Eje2wF_gUJ09JKNmytmiMoqQa5sqjAks&e=>' >>>> -v doesnt >>>> take to that host specified. >>>> >>>> >>>> >>>> Thanks >>>> >>>> Adi >>>> >>>> >>>> >>>> On Tue, Jan 24, 2017 at 12:28 PM, Sudheer Vinukonda >>>> <[email protected]<mailto:[email protected]>> wrote: >>>>> >>>>> You'd need to specify a preremap request hook (such as Read Request >>>>> Header) in your rules. I think the default hook is Send Response Header. >>>>> >>>>> - Sudheer >>>>> >>>>> On Jan 24, 2017, at 12:24 PM, Adi Mallikarjuna Reddy V >>>>> <[email protected]<mailto:[email protected]>> >>>>> wrote: >>>>> >>>>> Ok, I tried the following one with no luck. The requests are always >>>>> going to the new host without the customer header value also. >>>>> >>>>> cond %{HEADER:DEV_HOST} = "dev102" >>>>> set-destination HOST >>>>> dev102.abc.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__dev102.abc.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=_-vUOl7-IUQBxSWpCWQRHfgKTlkynDj4gS2EITb03PM&e=> >>>>> [L] >>>>> >>>>> >>>>> my remap rule is >>>>> >>>>> map / >>>>> http://abc.com/<https://urldefense.proofpoint.com/v2/url?u=http-3A__abc.com_&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=kAUkZaOQFdrh7vBl9ZGp01US3UqVCgC2OZClw87297A&e=> >>>>> @pristine_host_hdr=1 @plugin=header_rewrite.so >>>>> @pparam=my_header_rules.conf >>>>> >>>>> >>>>> Am I missing anything important here? >>>>> >>>>> >>>>> Thanks >>>>> >>>>> Adi >>>>> >>>>> >>>>> On Tue, Jan 24, 2017 at 11:46 AM, Jeremy Payne >>>>> <[email protected]<mailto:[email protected]>> >>>>> wrote: >>>>>> >>>>>> the lua plugin also has this functionality although may be somewhat >>>>>> overkill for your needs. >>>>>> >>>>>> >>>>>> On Tue, Jan 24, 2017 at 1:43 PM, Adi Mallikarjuna Reddy V >>>>>> <[email protected]<mailto:[email protected]>> >>>>>> wrote: >>>>>>> >>>>>>> So to achieve my use case, can I try something like this? >>>>>>> >>>>>>> map / >>>>>>> http://b.bar.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__b.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=ZmTeA-9TpDYjBZY8D5ZbIH7C0B8ARJQEGlVNQtwrM2E&e=> >>>>>>> @plugin=header_rewrite.so @pparam=rules1.conf >>>>>>> >>>>>>> and my rules1.conf has >>>>>>> >>>>>>> cond %{HEADER:MY_HEADER} = "foo" >>>>>>> set-destination HOST >>>>>>> mobile.bar.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__mobile.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=OjW15Ogh8XoRzjMiKVm34weSRoDM37bI9V4bwLWvRRA&e=> >>>>>>> [L] >>>>>>> >>>>>>> This should forward the request to >>>>>>> mobile.bar.com<https://urldefense.proofpoint.com/v2/url?u=http-3A__mobile.bar.com&d=DwMFaQ&c=LFYZ-o9_HUMeMTSQicvjIg&r=8c5kS62dKm3-obVyLvkwkc-kTTgV1vAsbxSPwL-yi3o&m=v0mj0eWykXpy2ufhdjszlOPBB8feWuYo5EOWvakp7hY&s=OjW15Ogh8XoRzjMiKVm34weSRoDM37bI9V4bwLWvRRA&e=> >>>>>>> if the request has >>>>>>> 'MY_HEADER' with value 'foo'. >>>>>>> >>>>>>> >>>>>>> Thanks >>>>>>> >>>>>>> Adi >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Tue, Jan 24, 2017 at 11:36 AM, Brian Geffon >>>>>>> <[email protected]<mailto:[email protected]>> wrote: >>>>>>>> >>>>>>>> Sorry I think I meant header_rewrite. >>>>>>>> >>>>>>>> Brian >>>>>>>> >>>>>>>> >>>>>>>> On Tue, Jan 24, 2017, 11:26 Brian Geffon >>>>>>>> <[email protected]<mailto:[email protected]>> >>>>>>>> wrote: >>>>>>>>> >>>>>>>>> There is a regex_remap plugin that is what you would want, take a >>>>>>>>> look in plugins/ >>>>>>>>> >>>>>>>>> Brian >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Jan 24, 2017, 11:25 Adi Mallikarjuna Reddy V >>>>>>>>> <[email protected]<mailto:[email protected]>> >>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> Is there a config that allows to change remap rule based on the >>>>>>>>>> incoming header? >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> My use case is , if I send a custom header in the request, the >>>>>>>>>> remap rule should be changed to different one than the default one >>>>>>>>>> configured. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Thanks >>>>>>>>>> >>>>>>>>>> Adi >>>>>>> >>>>>>> >>>>>> >>>>> >>>> >>> >> >
