質問編集履歴

7

誤記

2020/07/14 02:45

投稿

kuma35963
kuma35963

スコア6

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- AWS lambda 上のpython 3.8を使用し、条件分岐でpythonを強制停止する場合
1
+ AWS lambda 上のpythonを使用し、条件分岐でpythonを強制停止する場合
2
2
 
3
3
  条件で、下記のようにsys.exit()で処理を実行した場合、ログに「Runtime.ExitError」が出てしまうので、
4
4
 

6

誤記修正

2020/07/14 02:45

投稿

kuma35963
kuma35963

スコア6

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- AWS lambda 上のpython 3.8を使用し、条件分岐でpythonを強制停止する場合の構文が知りたいです。
1
+ AWS lambda 上のpython 3.8を使用し、条件分岐でpythonを強制停止する場合
2
2
 
3
3
  条件で、下記のようにsys.exit()で処理を実行した場合、ログに「Runtime.ExitError」が出てしまうので、
4
4
 

5

誤記修正

2020/07/13 10:24

投稿

kuma35963
kuma35963

スコア6

test CHANGED
File without changes
test CHANGED
@@ -26,9 +26,9 @@
26
26
 
27
27
  def profile_name(a):
28
28
 
29
- if a == "kokugo":
29
+ if a == "eigo":
30
30
 
31
- print("no eigo")
31
+ print("eigo")
32
32
 
33
33
  sys.exit(0)
34
34
 

4

誤記修正

2020/07/13 10:23

投稿

kuma35963
kuma35963

スコア6

test CHANGED
File without changes
test CHANGED
@@ -46,7 +46,9 @@
46
46
 
47
47
  {
48
48
 
49
+ "errorType": ""Runtime.ExitError" 
50
+
49
- "errorMessage": "RequestId: 3333333-6666-4444-3333-99999999999 Process exited before completing request"
51
+ "errorMessage": "RequestId: 3333333-6666-4444-3333-99999999999 Error: Runtime exited without providing a reason"
50
52
 
51
53
  }
52
54
 

3

知りたいことを明確に修正

2020/07/13 10:22

投稿

kuma35963
kuma35963

スコア6

test CHANGED
@@ -1 +1 @@
1
- python(AWS lambda)条件でプロセスを途中終了した場合に[実行結果:成功]で終了する方法りた
1
+ python(AWS lambda)条件分岐でプロセスを途中終了する場合のexit()以外の処理方法を教えてほしい
test CHANGED
@@ -1,6 +1,8 @@
1
- AWS lambda 上のpython 3.8を使用し、以下のサンプルような関数JSONの値パースする処理を検討してす。
1
+ AWS lambda 上のpython 3.8を使用し、条件分岐python強制停止する場合の構文が知りたす。
2
2
 
3
- 質問の内容としては、**条件によってlambda途中で終了した場合も[実行結果:成功]終了する方法**をご教示頂きたいです。
3
+ 条件で、下記のようsys.exit()で処理実行した場合、ログに「Runtime.ExitError」が出てしまうの
4
+
5
+ sys.exit()以外で停止する構文、方法があればご教示頂きたいです。
4
6
 
5
7
 
6
8
 
@@ -8,45 +10,29 @@
8
10
 
9
11
  import boto3
10
12
 
11
- import json
12
-
13
- import jmespath
14
-
15
13
  import sys
16
14
 
17
15
 
18
16
 
19
17
  def lambda_handler(event, context):
20
18
 
21
- info = { "profile": [] } ★
19
+ a = eigo
22
20
 
23
- name = jmespath.search('profile[].name[]', json)
24
-
25
-
26
-
27
- output_name = profile_name(name)
21
+ output_name = check_name(a)
28
-
29
-
30
22
 
31
23
  print(output_name)
32
24
 
33
25
 
34
26
 
35
- def profile_name(name):
27
+ def profile_name(a):
36
28
 
37
- if name == []:
29
+ if a == "kokugo":
38
30
 
39
- print("No value")
31
+ print("no eigo")
40
32
 
41
33
  sys.exit(0)
42
34
 
43
- return {'state': "fin"}
35
+ return {'state': "fin"}
44
-
45
-
46
-
47
- name = arn.rsplit('-', 1)
48
-
49
- return name
50
36
 
51
37
 
52
38
 
@@ -54,15 +40,7 @@
54
40
 
55
41
 
56
42
 
57
- 処理としては定期的(CloudWatchEvent)にinfoの変数(★マークがある行、上記サンプルはinfoのJSONの値が空だった場合を想定)に
58
-
59
- JSONを外部から取得・埋め込み、以降の処理で
60
-
61
- **①JSON内にプフィール情報があればパースして出力**
43
+ なお、sys.exit()で終了した場合のグは以下の通りです。
62
-
63
- **②JSON内にプロフィール情報がなければ、終了**
64
-
65
- という内容にしたいと考えておりますが、「JSON内にプロフィール情報がなければ、終了」で現行の関数を実行した場合ログに、
66
44
 
67
45
  ```ここに言語を入力
68
46
 
@@ -73,15 +51,3 @@
73
51
  }
74
52
 
75
53
  ```
76
-
77
- と出力され「実行結果: 失敗」として処理されてしまい、処理結果としてプロフィール情報がないこともありえるため、
78
-
79
- [実行結果:成功]の正常終了として完了したいと考えてます。
80
-
81
-
82
-
83
- Web・書籍などで調べた結果、sys.exit(0)でプロセスを終了した場合「プロセスを終了するだけで、例外は遮断されません。」とことで、
84
-
85
- 他の方法で、プロセスを終了する方法がないかを調べている最中ではありますが、現行経験が浅くまだ答えに行きついていない状況のため、
86
-
87
- お手数おかけいたしますが、上記の条件でlambda処理を[実行結果:成功]で完了できる方法をご存知であれば、お知恵をお借りしたくお願い申し上げます。

2

タイトルの誤記

2020/07/13 10:20

投稿

kuma35963
kuma35963

スコア6

test CHANGED
@@ -1 +1 @@
1
- python(AWS lambda)で条件でプロセスを途中終了した場合に[実行結果:成功]で終了する方法につ
1
+ python(AWS lambda)で条件でプロセスを途中終了した場合に[実行結果:成功]で終了する方法がしりた
test CHANGED
File without changes

1

カテゴリーの誤記

2020/07/12 07:18

投稿

kuma35963
kuma35963

スコア6

test CHANGED
File without changes
test CHANGED
File without changes